{"id":3707,"name":"org.sonarqube","ecosystem":"maven","repository_url":null,"issues_count":1660,"created_at":"2025-06-06T16:30:14.019Z","updated_at":"2025-06-06T16:30:14.019Z","purl":"pkg:maven/org.sonarqube","unique_repositories_count":448,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"5087230859","node_id":"PR_kwDOTwMznM774uB9","number":5,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.1.8318","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-08-07T17:13:20.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-07T05:38:22.000Z","updated_at":"2026-08-07T17:13:29.000Z","time_to_close":41698,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.1.8318)](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/sayedalve/PDF-Elite/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayedalve%2FPDF-Elite/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"},{"uuid":"4635988207","node_id":"PR_kwDOKyk85s7lF9T9","number":2335,"state":"closed","title":"chore(deps): bump the all-backend-non-major-dependencies group across 1 directory with 13 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-12T00:04:23.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-11T00:04:56.000Z","updated_at":"2026-06-12T00:04:25.000Z","time_to_close":86367,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"all-backend-non-major-dependencies","update_count":13,"packages":[{"name":"software.amazon.awssdk:bom","old_version":"2.44.6","new_version":"2.46.5"},{"name":"com.google.protobuf:protobuf-java","old_version":"4.34.1","new_version":"4.35.0","repository_url":"https://github.com/protocolbuffers/protobuf"},{"name":"org.jobrunr:jobrunr-spring-boot-3-starter","old_version":"8.6.0","new_version":"8.6.1","repository_url":"https://github.com/jobrunr/jobrunr"},{"name":"com.uber.nullaway:nullaway","old_version":"0.13.4","new_version":"0.13.6","repository_url":"https://github.com/uber/NullAway"},{"name":"org.apache.tika:tika-core","old_version":"3.3.0","new_version":"3.3.1","repository_url":"https://github.com/apache/tika"},{"name":"io.netty:netty-codec-http","old_version":"4.2.13.Final","new_version":"4.2.15.Final","repository_url":"https://github.com/netty/netty"},{"name":"com.fasterxml.jackson.core:jackson-core","old_version":"2.21.3","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson-core"},{"name":"com.github.jk1.dependency-license-report","old_version":"3.1.2","new_version":"3.1.3"},{"name":"io.sentry.jvm.gradle","old_version":"6.6.0","new_version":"6.10.0","repository_url":"https://github.com/getsentry/sentry-android-gradle-plugin"},{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318"},{"name":"com.diffplug.spotless","old_version":"8.4.0","new_version":"8.6.0"}],"path":null,"ecosystem":"maven"},"body":"Bumps the all-backend-non-major-dependencies group with 11 updates in the /backend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| software.amazon.awssdk:bom | `2.44.6` | `2.46.5` |\n| [com.google.protobuf:protobuf-java](https://github.com/protocolbuffers/protobuf) | `4.34.1` | `4.35.0` |\n| [org.jobrunr:jobrunr-spring-boot-3-starter](https://github.com/jobrunr/jobrunr) | `8.6.0` | `8.6.1` |\n| [com.uber.nullaway:nullaway](https://github.com/uber/NullAway) | `0.13.4` | `0.13.6` |\n| [org.apache.tika:tika-core](https://github.com/apache/tika) | `3.3.0` | `3.3.1` |\n| [io.netty:netty-codec-http](https://github.com/netty/netty) | `4.2.13.Final` | `4.2.15.Final` |\n| [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) | `2.21.3` | `2.22.0` |\n| com.github.jk1.dependency-license-report | `3.1.2` | `3.1.3` |\n| [io.sentry.jvm.gradle](https://github.com/getsentry/sentry-android-gradle-plugin) | `6.6.0` | `6.10.0` |\n| org.sonarqube | `7.3.0.8198` | `7.3.1.8318` |\n| com.diffplug.spotless | `8.4.0` | `8.6.0` |\n\n\nUpdates `software.amazon.awssdk:bom` from 2.44.6 to 2.46.5\n\nUpdates `com.google.protobuf:protobuf-java` from 4.34.1 to 4.35.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/protocolbuffers/protobuf/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jobrunr:jobrunr-spring-boot-3-starter` from 8.6.0 to 8.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jobrunr/jobrunr/releases\"\u003eorg.jobrunr:jobrunr-spring-boot-3-starter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.6.1\u003c/h2\u003e\n\u003ch1\u003eJobRunr and JobRunr Pro 8.6.1\u003c/h1\u003e\n\u003cp\u003eThis patch release includes bug fixes and small improvements for both JobRunr and JobRunr Pro.\u003c/p\u003e\n\u003ch2\u003eJobRunr 8.6.1\u003c/h2\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix multiple master nodes [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1557\"\u003e#1557\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1557\"\u003ejobrunr/jobrunr#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLog dataVersion mismatch exceptions [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1555\"\u003e#1555\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1555\"\u003ejobrunr/jobrunr#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix thread pool corePoolSize setting [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1559\"\u003e#1559\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1559\"\u003ejobrunr/jobrunr#1559\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable JobScheduler and JobRequestScheduler by default for Micronaut [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1556\"\u003e#1556\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1556\"\u003ejobrunr/jobrunr#1556\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\"\u003ehttps://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eJobRunr Pro 8.6.1\u003c/h2\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix multiple master nodes [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1557\"\u003e#1557\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1557\"\u003ejobrunr/jobrunr#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLog dataVersion mismatch exceptions [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1555\"\u003e#1555\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1555\"\u003ejobrunr/jobrunr#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix thread pool corePoolSize setting [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1559\"\u003e#1559\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1559\"\u003ejobrunr/jobrunr#1559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JobFilters from logging when annotation class is missing [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/886\"\u003e#886\u003c/a\u003e](\u003ca href=\"https://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/886\"\u003ehttps://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoNotRetryPolicy trying to retry [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/884\"\u003e#884\u003c/a\u003e](\u003ca href=\"https://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/884\"\u003ehttps://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove from FromScheduledConcurrentStateChange to also support awaiting jobs [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/890\"\u003e#890\u003c/a\u003e](\u003ca href=\"https://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/890\"\u003ehttps://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/890\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable JobScheduler and JobRequestScheduler by default for Micronaut [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1556\"\u003e#1556\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1556\"\u003ejobrunr/jobrunr#1556\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\"\u003ehttps://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/b32f0278051c33cfaef9f0d79bcdd93ebaa3235c\"\u003e\u003ccode\u003eb32f027\u003c/code\u003e\u003c/a\u003e PR feedback (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1559\"\u003e#1559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/1ba9156c005bb57567dcb9ac7e5aab1c6c1baef9\"\u003e\u003ccode\u003e1ba9156\u003c/code\u003e\u003c/a\u003e Cleanup after tests (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1558\"\u003e#1558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/556ee9c3178e71129a33be19a15a0166b09475ed\"\u003e\u003ccode\u003e556ee9c\u003c/code\u003e\u003c/a\u003e Prevent dataVersion mismatch exceptions from spamming logs (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1555\"\u003e#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/b34a455eab52595e654df19428c1c16fc8e5d9a9\"\u003e\u003ccode\u003eb34a455\u003c/code\u003e\u003c/a\u003e Fix multiple master nodes (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1557\"\u003e#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/758cd71d05b3438531bfc338b9c05dc6eb7afd93\"\u003e\u003ccode\u003e758cd71\u003c/code\u003e\u003c/a\u003e Enable JobScheduler and JobRequestScheduler by default for Micronaut (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1556\"\u003e#1556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/19a04c6cc007d5e265d5cef513a3d5706d48ec43\"\u003e\u003ccode\u003e19a04c6\u003c/code\u003e\u003c/a\u003e Use local maven proxy and gradle cache (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1554\"\u003e#1554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.uber.nullaway:nullaway` from 0.13.4 to 0.13.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uber/NullAway/releases\"\u003ecom.uber.nullaway:nullaway's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eNullAway 0.13.6\u003c/h2\u003e\n\u003cp\u003e(NOTE: originally these notes appeared with the 0.13.5 release, but that release was pushed\nincorrectly due to an error in our release process.)\u003c/p\u003e\n\u003cp\u003eIncludes various bug fixes, particularly in JSpecify mode.  Also, the nullaway-annotations\nartifact now includes a \u003ccode\u003e@Contract\u003c/code\u003e annotation.  NullAway also now has a built-in handler\nto reason about field initialization in classes managed by Jakarta Persistence.\u003c/p\u003e\n\u003cp\u003eWork has begun on support  for wildcards in JSpecify mode.  Currently, this support is off\nby default, guarded by the configuration flag \u003ccode\u003eHandleWildcardGenerics\u003c/code\u003e.  The support still\nhas multiple known bugs, and we do not yet recommend enabling it.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInitial subtype checking for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1520\"\u003e#1520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle subtype checking for wildcard super bounds (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1547\"\u003e#1547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle most remaining wildcard subtyping / containment cases (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1548\"\u003e#1548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for \u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1528\"\u003e#1528\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1556\"\u003e#1556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial inference for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1549\"\u003e#1549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix wildcard inference bug with method references (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1553\"\u003e#1553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nullability for return and parameter wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1558\"\u003e#1558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for trick to assert chain of accesses is non-null (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1566\"\u003e#1566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove inference failure error message (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdjust more TreePaths to have correct leaf before calling getTreeType (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1570\"\u003e#1570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Contract annotation to nullaway-annotations by \u003ca href=\"https://github.com/codingkiddo\"\u003e\u003ccode\u003e@​codingkiddo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRun inference for generic method calls nested inside receivers (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor hasAnyAnnotationMatching method (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1583\"\u003e#1583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove handling of \u003ccode\u003evar\u003c/code\u003e-declared local variables (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1573\"\u003e#1573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompensate for more annotations inserted by \u003ccode\u003ejavac\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1574\"\u003e#1574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable test for issue 1500 and add comment (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1560\"\u003e#1560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse ground target types when handling lambdas and method refs passed to generic methods (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1575\"\u003e#1575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix for unbounded wildcard passed to \u003ccode\u003e@NullUnmarked\u003c/code\u003e type variable (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect and warn on annotations directly on wildcard types (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable HandleWildcardGenerics flag when building NullAway (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReport error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor by \u003ca href=\"https://github.com/Vinu2111\"\u003e\u003ccode\u003e@​Vinu2111\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd a handler for Jakarta Persistence to reason about field initialization (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1584\"\u003e#1584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1588\"\u003e#1588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMaintenance\n\u003cul\u003e\n\u003cli\u003eUse Jacoco 0.8.15 snapshot (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1550\"\u003e#1550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate to Gradle 9.5.0 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1554\"\u003e#1554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest with latest Error Prone snapshot on CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1555\"\u003e#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Spring Boot as an integration test (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1557\"\u003e#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable generic bytecode tests on JDK 17 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1561\"\u003e#1561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate spotless and guava-latest deps, removed unused semver4j (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1562\"\u003e#1562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks in more tests (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1563\"\u003e#1563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks for addInputLines and addOutputLines calls (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1564\"\u003e#1564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse Temurin JDK 17 always in CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTell agents not to run multiple Gradle builds in parallel (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate Codecov action to v6 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1587\"\u003e#1587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNullAway 0.13.5\u003c/h2\u003e\n\u003cp\u003eDO NOT USE THIS RELEASE.  It was pushed incorrectly due to an error in our release process.\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/uber/NullAway/blob/master/CHANGELOG.md\"\u003ecom.uber.nullaway:nullaway's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.13.6\u003c/h2\u003e\n\u003cp\u003e(NOTE: originally these notes appeared with the 0.13.5 release, but that release was pushed\nincorrectly due to an error in our release process.)\u003c/p\u003e\n\u003cp\u003eIncludes various bug fixes, particularly in JSpecify mode.  Also, the nullaway-annotations\nartifact now includes a \u003ccode\u003e@Contract\u003c/code\u003e annotation.  NullAway also now has a built-in handler\nto reason about field initialization in classes managed by Jakarta Persistence.\u003c/p\u003e\n\u003cp\u003eWork has begun on support  for wildcards in JSpecify mode.  Currently, this support is off\nby default, guarded by the configuration flag \u003ccode\u003eHandleWildcardGenerics\u003c/code\u003e.  The support still\nhas multiple known bugs, and we do not yet recommend enabling it.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInitial subtype checking for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1520\"\u003e#1520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle subtype checking for wildcard super bounds (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1547\"\u003e#1547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle most remaining wildcard subtyping / containment cases (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1548\"\u003e#1548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for \u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1528\"\u003e#1528\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1556\"\u003e#1556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial inference for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1549\"\u003e#1549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix wildcard inference bug with method references (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1553\"\u003e#1553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nullability for return and parameter wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1558\"\u003e#1558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for trick to assert chain of accesses is non-null (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1566\"\u003e#1566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove inference failure error message (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdjust more TreePaths to have correct leaf before calling getTreeType (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1570\"\u003e#1570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Contract annotation to nullaway-annotations by \u003ca href=\"https://github.com/codingkiddo\"\u003e\u003ccode\u003e@​codingkiddo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRun inference for generic method calls nested inside receivers (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor hasAnyAnnotationMatching method (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1583\"\u003e#1583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove handling of \u003ccode\u003evar\u003c/code\u003e-declared local variables (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1573\"\u003e#1573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompensate for more annotations inserted by \u003ccode\u003ejavac\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1574\"\u003e#1574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable test for issue 1500 and add comment (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1560\"\u003e#1560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse ground target types when handling lambdas and method refs passed to generic methods (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1575\"\u003e#1575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix for unbounded wildcard passed to \u003ccode\u003e@NullUnmarked\u003c/code\u003e type variable (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect and warn on annotations directly on wildcard types (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable HandleWildcardGenerics flag when building NullAway (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReport error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor by \u003ca href=\"https://github.com/Vinu2111\"\u003e\u003ccode\u003e@​Vinu2111\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd a handler for Jakarta Persistence to reason about field initialization (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1584\"\u003e#1584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1588\"\u003e#1588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMaintenance\n\u003cul\u003e\n\u003cli\u003eUse Jacoco 0.8.15 snapshot (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1550\"\u003e#1550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate to Gradle 9.5.0 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1554\"\u003e#1554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest with latest Error Prone snapshot on CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1555\"\u003e#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Spring Boot as an integration test (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1557\"\u003e#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable generic bytecode tests on JDK 17 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1561\"\u003e#1561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate spotless and guava-latest deps, removed unused semver4j (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1562\"\u003e#1562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks in more tests (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1563\"\u003e#1563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks for addInputLines and addOutputLines calls (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1564\"\u003e#1564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse Temurin JDK 17 always in CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTell agents not to run multiple Gradle builds in parallel (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate Codecov action to v6 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1587\"\u003e#1587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/fa850b5fe8bf3603d3e50a8993956b747f814b23\"\u003e\u003ccode\u003efa850b5\u003c/code\u003e\u003c/a\u003e Prepare for release 0.13.6.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/e188182a87170b8f12ecea7cf45526bdde028dd0\"\u003e\u003ccode\u003ee188182\u003c/code\u003e\u003c/a\u003e Notes for 0.13.6 release (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1592\"\u003e#1592\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/c09d2028545881603d1c98b11e5b7e0653cf8bc4\"\u003e\u003ccode\u003ec09d202\u003c/code\u003e\u003c/a\u003e Add 0.13.5 release notes to changelog (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1589\"\u003e#1589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/d9d0392e94ea449669623a0bef4f42e5dd8dd357\"\u003e\u003ccode\u003ed9d0392\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1588\"\u003e#1588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/ec978b9b18afbe48e4c68b55a8e4919c70292a04\"\u003e\u003ccode\u003eec978b9\u003c/code\u003e\u003c/a\u003e Update Codecov action to v6 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1587\"\u003e#1587\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/69ba115d7395a7d0c7d0128480b01cb604afe488\"\u003e\u003ccode\u003e69ba115\u003c/code\u003e\u003c/a\u003e Add a handler for Jakarta Persistence to reason about field initialization (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/661f37443b0205102b23a99a994d409f9aa0cf14\"\u003e\u003ccode\u003e661f374\u003c/code\u003e\u003c/a\u003e Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/f790ac9ef7ba642096bbcfea04126484d13d7b98\"\u003e\u003ccode\u003ef790ac9\u003c/code\u003e\u003c/a\u003e Enable HandleWildcardGenerics flag when building NullAway (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/31b14ce725d8f544eb2ec84f4912e16cfcb48c47\"\u003e\u003ccode\u003e31b14ce\u003c/code\u003e\u003c/a\u003e Detect and warn on annotations directly on wildcard types (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/c183d49078ba2b75d3309250cb320b28fb086f31\"\u003e\u003ccode\u003ec183d49\u003c/code\u003e\u003c/a\u003e Fix for unbounded wildcard passed to \u003ccode\u003e@NullUnmarked\u003c/code\u003e type variable (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/uber/NullAway/compare/v0.13.4...v0.13.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.tika:tika-core` from 3.3.0 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/tika/blob/3.3.1/CHANGES.txt\"\u003eorg.apache.tika:tika-core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eRelease 3.3.1 - 5/20/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDependency upgrades  (TIKA-4695).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse the IANA-registered text/markdown as the primary media type, with\ntext/x-web-markdown and text/x-markdown kept as aliases (TIKA-4724).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix several potential resource/file-handle leaks across the OOXML and ODF parsers,\nthe HTTP fetcher, the gRPC server, and ForkClient (TIKA-4704).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe resourceName of a nested tarball no longer includes the parent\ndirectories of its parent gzip file, and fix a typo in the .gz extension\n(TIKA-4705).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRelease 3.3.0 - 3/18/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSwitch to poi-ooxml-full (TIKA-4563).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUsers need to add \u0026quot;allowAbsolutePaths=true\u0026quot; for the FileSystemFetcher to fetch\nan absolute path (TIKA-4649).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd a markdown option for content handlers (TIKA-4563).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove zip parsing (TIKA-4650).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd detection of compressed bmp (TIKA-4511).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow per file timeouts in tika-pipes (TIKA-4497).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd matroska detector (TIKA-1180).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow multiple values for many Dublin Core keys (TIKA-4466).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExtract macros by default in tika-app's commandline and gui (TIKA-4472).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove extraction of Javascript from PDFs (TIKA-4465).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRelease 3.2.3 - 9/11/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAllow backwards compatibility with versions of commons-compress before 1.28.0 (TIKA-4469).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix XFA parsing within PDFs when woodstox is on the classpath as in tika-server (TIKA-4482).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency updates.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRelease 3.2.2 - 8/6/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eImprove detection of encrypted ODT files (TIKA-4459)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency updates (TIKA-4455).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/bf9aa9249a4f9ff14f53bcd419efdebd92253351\"\u003e\u003ccode\u003ebf9aa92\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 3.3.1-rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/bc80738930257290d88e3e94ed433c9eb16b2d75\"\u003e\u003ccode\u003ebc80738\u003c/code\u003e\u003c/a\u003e TIKA-4729 - prep for 3.3.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/5a2e4a71aae3e399b804a0506f9cbc5bf56d2850\"\u003e\u003ccode\u003e5a2e4a7\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, jbig2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/75dbf683e9b799de3781595cff5f1e034c4074cd\"\u003e\u003ccode\u003e75dbf68\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, enforcer plugin, azure\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/3b6e1f6c8cad97a6afb8efd6492b13c8272b6262\"\u003e\u003ccode\u003e3b6e1f6\u003c/code\u003e\u003c/a\u003e TIKA-4695: update plexus-classworlds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/1de9eb9c51236e8ce434be9bf40ebac946381090\"\u003e\u003ccode\u003e1de9eb9\u003c/code\u003e\u003c/a\u003e TIKA-4695: update maven-model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/90b43fe5695dcb8f68d54873986f190f47aee39d\"\u003e\u003ccode\u003e90b43fe\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, junrar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/2485c0d0521c5d3e1b70255337a0059b73d3ecd7\"\u003e\u003ccode\u003e2485c0d\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, asm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/687006f73d16771d2306a3f314d0e31f8d1489dc\"\u003e\u003ccode\u003e687006f\u003c/code\u003e\u003c/a\u003e TIKA-4695: update slf4j\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/bdaa2afae1f6346354776770dfc7d8c7156ab2ab\"\u003e\u003ccode\u003ebdaa2af\u003c/code\u003e\u003c/a\u003e [TIKA-4724] Use IANA-registered text/markdown as primary type (\u003ca href=\"https://redirect.github.com/apache/tika/issues/2806\"\u003e#2806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/tika/compare/3.3.0...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-codec-http` from 4.2.13.Final to 4.2.15.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-codec-http's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.15.Final\u003c/h2\u003e\n\u003ch2\u003eSecurity fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-h2qv-fj59-j46j\"\u003eCVE-2026-48059\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5pvg-856g-cp85\"\u003eCVE-2026-47691\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-563q-j3cm-6jxm\"\u003eCVE-2026-50560\u003c/a\u003e: DDoS in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5w86-c3rq-vjj7\"\u003eCVE-2026-50011\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3244-j874-rhc2\"\u003eCVE-2026-44250\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6ghj-frrj-jjj3\"\u003eCVE-2026-44890\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cq4q-cv5g-r8q5\"\u003eCVE-2026-50009\u003c/a\u003e: information disclosure and denial of service in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3qp7-7mw8-wx86\"\u003eCVE-2026-44249\u003c/a\u003e: IPv6 subnet filter bypass in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-hvcg-qmg6-jm4c\"\u003eCVE-2026-50020\u003c/a\u003e: request smuggling in \u003ccode\u003eio.netty:netty-codec-http\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2rx-5r8w-8xr2\"\u003eCVE-2026-44892\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cc37-9q2j-3hfv\"\u003eCVE-2026-44893\u003c/a\u003e: memory leak in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cmm3-54f8-px4j\"\u003eCVE-2026-44894\u003c/a\u003e: traffic amplification in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c653-97m9-rcg9\"\u003eCVE-2026-50010\u003c/a\u003e: TLS hostname verification accidentally disabled in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-xmv7-r254-6q78\"\u003eCVE-2026-45673\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-x4gw-5cx5-pgmh\"\u003eCVE-2026-45416\u003c/a\u003e: excessive memory usage from SNIHandler in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-w573-9ffj-6ff9\"\u003eCVE-2026-45536\u003c/a\u003e: file descriptor leak in \u003ccode\u003eio.netty:netty-transport-native-epoll\u003c/code\u003e and \u003ccode\u003eio.netty:netty-transport-native-kqueue\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-676x-f7gg-47vc\"\u003eCVE-2026-45674\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5xrh-qmmq-w6ch\"\u003eCVE-2026-46340\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-transport-sctp\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5x3r-wrvg-rp6q\"\u003eCVE-2026-47244\u003c/a\u003e: denial of service in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6jv9-x5w9-2ccm\"\u003eCVE-2026-48006\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-4grm-h2qv-h6w6\"\u003eCVE-2026-48748\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2gf-v879-257j\"\u003eCVE-2026-48043\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race in io.netty.channel.uring.IoUringIoHandler.wakeup 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/16836\"\u003enetty/netty#16836\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP/2: Parse request-target path like Vert.x 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/16810\"\u003enetty/netty#16810\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: ChannelInitializer: correct misleading comment on exceptionCaught route by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16853\"\u003enetty/netty#16853\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlowControlHandler: Suppress duplicate channelReadComplete after draining queue (\u003ca href=\"https://redirect.github.com/netty/netty/issues/15053\"\u003e#15053\u003c/a\u003e) by \u003ca href=\"https://github.com/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePass maxAllocation to Brotli and Zstd decoders by \u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix revapi warnings 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/16885\"\u003enetty/netty#16885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SCTP and Redis 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/16893\"\u003enetty/netty#16893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd maxWindowLog parameter to ZstdDecoder to bound memory allocation by \u003ca href=\"https://github.com/skyguard1\"\u003e\u003ccode\u003e@​skyguard1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16850\"\u003enetty/netty#16850\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remaining Length by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16890\"\u003enetty/netty#16890\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/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\"\u003ehttps://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003enetty-4.2.14.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 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/16748\"\u003enetty/netty#16748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP: Re-add constructor to HttpProxyHandler that was removed by mistake 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/16747\"\u003enetty/netty#16747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMarshalling: Explicit document security requirements 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/16752\"\u003enetty/netty#16752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix io_uring op completion TRACE logging 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/16755\"\u003enetty/netty#16755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuic: Ensure writes are done before notify close promise of QuicheQui… 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/16758\"\u003enetty/netty#16758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid re-parsing openssl key material with non-cached provider 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/16759\"\u003enetty/netty#16759\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/a41f7b289ce1d697c50846f3ade3983e22b2ed40\"\u003e\u003ccode\u003ea41f7b2\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.15.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/2394530bdb6837d928c2ec0b4d8f598487059ef9\"\u003e\u003ccode\u003e2394530\u003c/code\u003e\u003c/a\u003e Auto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/0bd1657a601da85c324d28562dc7d1ae220ad3a7\"\u003e\u003ccode\u003e0bd1657\u003c/code\u003e\u003c/a\u003e Add maxWindowLog parameter to ZstdDecoder to bound memory allocation (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16850\"\u003e#16850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/76291f58a901e021289e5c30618b6e136d605163\"\u003e\u003ccode\u003e76291f5\u003c/code\u003e\u003c/a\u003e Fix SCTP and Redis tests (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16893\"\u003e#16893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/e067b6e3376afee7629481d46333c3acf7f95943\"\u003e\u003ccode\u003ee067b6e\u003c/code\u003e\u003c/a\u003e Fix revapi warnings (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/5a52600d96cc6f4d38098e0645be53ecbfc8a811\"\u003e\u003ccode\u003e5a52600\u003c/code\u003e\u003c/a\u003e Pass maxAllocation to Brotli and Zstd decoders (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16844\"\u003e#16844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/541add0f7f5486ef15834da51d8dd983ec12e2b3\"\u003e\u003ccode\u003e541add0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/270800e5d336913606493a562c8200ecf321a0c1\"\u003e\u003ccode\u003e270800e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/3d45a1e4e8eb99144f716e54be5ac57e525fa7ca\"\u003e\u003ccode\u003e3d45a1e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/75127cab731ee35068d1f0667bffa188bc332f5d\"\u003e\u003ccode\u003e75127ca\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.13.Final...netty-4.2.15.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-codec-http2` from 4.2.13.Final to 4.2.15.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-codec-http2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.15.Final\u003c/h2\u003e\n\u003ch2\u003eSecurity fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-h2qv-fj59-j46j\"\u003eCVE-2026-48059\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5pvg-856g-cp85\"\u003eCVE-2026-47691\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-563q-j3cm-6jxm\"\u003eCVE-2026-50560\u003c/a\u003e: DDoS in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5w86-c3rq-vjj7\"\u003eCVE-2026-50011\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3244-j874-rhc2\"\u003eCVE-2026-44250\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6ghj-frrj-jjj3\"\u003eCVE-2026-44890\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cq4q-cv5g-r8q5\"\u003eCVE-2026-50009\u003c/a\u003e: information disclosure and denial of service in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3qp7-7mw8-wx86\"\u003eCVE-2026-44249\u003c/a\u003e: IPv6 subnet filter bypass in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-hvcg-qmg6-jm4c\"\u003eCVE-2026-50020\u003c/a\u003e: request smuggling in \u003ccode\u003eio.netty:netty-codec-http\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2rx-5r8w-8xr2\"\u003eCVE-2026-44892\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cc37-9q2j-3hfv\"\u003eCVE-2026-44893\u003c/a\u003e: memory leak in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cmm3-54f8-px4j\"\u003eCVE-2026-44894\u003c/a\u003e: traffic amplification in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c653-97m9-rcg9\"\u003eCVE-2026-50010\u003c/a\u003e: TLS hostname verification accidentally disabled in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-xmv7-r254-6q78\"\u003eCVE-2026-45673\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-x4gw-5cx5-pgmh\"\u003eCVE-2026-45416\u003c/a\u003e: excessive memory usage from SNIHandler in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-w573-9ffj-6ff9\"\u003eCVE-2026-45536\u003c/a\u003e: file descriptor leak in \u003ccode\u003eio.netty:netty-transport-native-epoll\u003c/code\u003e and \u003ccode\u003eio.netty:netty-transport-native-kqueue\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-676x-f7gg-47vc\"\u003eCVE-2026-45674\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5xrh-qmmq-w6ch\"\u003eCVE-2026-46340\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-transport-sctp\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5x3r-wrvg-rp6q\"\u003eCVE-2026-47244\u003c/a\u003e: denial of service in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6jv9-x5w9-2ccm\"\u003eCVE-2026-48006\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-4grm-h2qv-h6w6\"\u003eCVE-2026-48748\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2gf-v879-257j\"\u003eCVE-2026-48043\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race in io.netty.channel.uring.IoUringIoHandler.wakeup 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/16836\"\u003enetty/netty#16836\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP/2: Parse request-target path like Vert.x 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/16810\"\u003enetty/netty#16810\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: ChannelInitializer: correct misleading comment on exceptionCaught route by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16853\"\u003enetty/netty#16853\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlowControlHandler: Suppress duplicate channelReadComplete after draining queue (\u003ca href=\"https://redirect.github.com/netty/netty/issues/15053\"\u003e#15053\u003c/a\u003e) by \u003ca href=\"https://github.com/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePass maxAllocation to Brotli and Zstd decoders by \u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix revapi warnings 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/16885\"\u003enetty/netty#16885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SCTP and Redis 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/16893\"\u003enetty/netty#16893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd maxWindowLog parameter to ZstdDecoder to bound memory allocation by \u003ca href=\"https://github.com/skyguard1\"\u003e\u003ccode\u003e@​skyguard1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16850\"\u003enetty/netty#16850\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remaining Length by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16890\"\u003enetty/netty#16890\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/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\"\u003ehttps://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003enetty-4.2.14.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 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/16748\"\u003enetty/netty#16748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP: Re-add constructor to HttpProxyHandler that was removed by mistake 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/16747\"\u003enetty/netty#16747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMarshalling: Explicit document security requirements 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/16752\"\u003enetty/netty#16752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix io_uring op completion TRACE logging 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/16755\"\u003enetty/netty#16755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuic: Ensure writes are done before notify close promise of QuicheQui… 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/16758\"\u003enetty/netty#16758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid re-parsing openssl key material with non-cached provider 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/16759\"\u003enetty/netty#16759\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/a41f7b289ce1d697c50846f3ade3983e22b2ed40\"\u003e\u003ccode\u003ea41f7b2\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.15.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/2394530bdb6837d928c2ec0b4d8f598487059ef9\"\u003e\u003ccode\u003e2394530\u003c/code\u003e\u003c/a\u003e Auto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/0bd1657a601da85c324d28562dc7d1ae220ad3a7\"\u003e\u003ccode\u003e0bd1657\u003c/code\u003e\u003c/a\u003e Add maxWindowLog parameter to ZstdDecoder to bound memory allocation (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16850\"\u003e#16850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/76291f58a901e021289e5c30618b6e136d605163\"\u003e\u003ccode\u003e76291f5\u003c/code\u003e\u003c/a\u003e Fix SCTP and Redis tests (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16893\"\u003e#16893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/e067b6e3376afee7629481d46333c3acf7f95943\"\u003e\u003ccode\u003ee067b6e\u003c/code\u003e\u003c/a\u003e Fix revapi warnings (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/5a52600d96cc6f4d38098e0645be53ecbfc8a811\"\u003e\u003ccode\u003e5a52600\u003c/code\u003e\u003c/a\u003e Pass maxAllocation to Brotli and Zstd decoders (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16844\"\u003e#16844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/541add0f7f5486ef15834da51d8dd983ec12e2b3\"\u003e\u003ccode\u003e541add0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/270800e5d336913606493a562c8200ecf321a0c1\"\u003e\u003ccode\u003e270800e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/3d45a1e4e8eb99144f716e54be5ac57e525fa7ca\"\u003e\u003ccode\u003e3d45a1e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/75127cab731ee35068d1f0667bffa188bc332f5d\"\u003e\u003ccode\u003e75127ca\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.13.Final...netty-4.2.15.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-codec` from 4.2.13.Final to 4.2.15.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-codec's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.15.Final\u003c/h2\u003e\n\u003ch2\u003eSecurity fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-h2qv-fj59-j46j\"\u003eCVE-2026-48059\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5pvg-856g-cp85\"\u003eCVE-2026-47691\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-563q-j3cm-6jxm\"\u003eCVE-2026-50560\u003c/a\u003e: DDoS in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5w86-c3rq-vjj7\"\u003eCVE-2026-50011\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3244-j874-rhc2\"\u003eCVE-2026-44250\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6ghj-frrj-jjj3\"\u003eCVE-2026-44890\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cq4q-cv5g-r8q5\"\u003eCVE-2026-50009\u003c/a\u003e: information disclosure and denial of service in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3qp7-7mw8-wx86\"\u003eCVE-2026-44249\u003c/a\u003e: IPv6 subnet filter bypass in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-hvcg-qmg6-jm4c\"\u003eCVE-2026-50020\u003c/a\u003e: request smuggling in \u003ccode\u003eio.netty:netty-codec-http\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2rx-5r8w-8xr2\"\u003eCVE-2026-44892\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cc37-9q2j-3hfv\"\u003eCVE-2026-44893\u003c/a\u003e: memory leak in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cmm3-54f8-px4j\"\u003eCVE-2026-44894\u003c/a\u003e: traffic amplification in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c653-97m9-rcg9\"\u003eCVE-2026-50010\u003c/a\u003e: TLS hostname verification accidentally disabled in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-xmv7-r254-6q78\"\u003eCVE-2026-45673\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-x4gw-5cx5-pgmh\"\u003eCVE-2026-45416\u003c/a\u003e: excessive memory usage from SNIHandler in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-w573-9ffj-6ff9\"\u003eCVE-2026-45536\u003c/a\u003e: file descriptor leak in \u003ccode\u003eio.netty:netty-transport-native-epoll\u003c/code\u003e and \u003ccode\u003eio.netty:netty-transport-native-kqueue\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-676x-f7gg-47vc\"\u003eCVE-2026-45674\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5xrh-qmmq-w6ch\"\u003eCVE-2026-46340\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-transport-sctp\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5x3r-wrvg-rp6q\"\u003eCVE-2026-47244\u003c/a\u003e: denial of service in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6jv9-x5w9-2ccm\"\u003eCVE-2026-48006\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-4grm-h2qv-h6w6\"\u003eCVE-2026-48748\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2gf-v879-257j\"\u003eCVE-2026-48043\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race in io.netty.channel.uring.IoUringIoHandler.wakeup 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/16836\"\u003enetty/netty#16836\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP/2: Parse request-target path like Vert.x 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/16810\"\u003enetty/netty#16810\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: ChannelInitializer: correct misleading comment on exceptionCaught route by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16853\"\u003enetty/netty#16853\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlowControlHandler: Suppress duplicate channelReadComplete after draining queue (\u003ca href=\"https://redirect.github.com/netty/netty/issues/15053\"\u003e#15053\u003c/a\u003e) by \u003ca href=\"https://github.com/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePass maxAllocation to Brotli and Zstd decoders by \u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix revapi warnings 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/16885\"\u003enetty/netty#16885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SCTP and Redis 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/16893\"\u003enetty/netty#16893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd maxWindowLog parameter to ZstdDecoder to bound memory allocation by \u003ca href=\"https://github.com/skyguard1\"\u003e\u003ccode\u003e@​skyguard1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16850\"\u003enetty/netty#16850\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remaining Length by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16890\"\u003enetty/netty#16890\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/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\"\u003ehttps://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003enetty-4.2.14.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 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/16748\"\u003enetty/netty#16748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP: Re-add constructor to HttpProxyHandler that was removed by mistake 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/16747\"\u003enetty/netty#16747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMarshalling: Explicit document security requirements 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/16752\"\u003enetty/netty#16752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix io_uring op completion TRACE logging 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/16755\"\u003enetty/netty#16755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuic: Ensure writes are done before notify close promise of QuicheQui… 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/16758\"\u003enetty/netty#16758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid re-parsing openssl key material with non-cached provider 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/16759\"\u003enetty/netty#16759\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/a41f7b289ce1d697c50846f3ade3983e22b2ed40\"\u003e\u003ccode\u003ea41f7b2\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.15.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/2394530bdb6837d928c2ec0b4d8f598487059ef9\"\u003e\u003ccode\u003e2394530\u003c/code\u003e\u003c/a\u003e Auto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/0bd1657a601da85c324d28562dc7d1ae220ad3a7\"\u003e\u003ccode\u003e0bd1657\u003c/code\u003e\u003c/a\u003e Add maxWindowLog parameter to ZstdDecoder to bound memory allocation (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16850\"\u003e#16850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/76291f58a901e021289e5c30618b6e136d605163\"\u003e\u003ccode\u003e76291f5\u003c/code\u003e\u003c/a\u003e Fix SCTP and Redis tests (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16893\"\u003e#16893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/e067b6e3376afee7629481d46333c3acf7f95943\"\u003e\u003ccode\u003ee067b6e\u003c/code\u003e\u003c/a\u003e Fix revapi warnings (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/5a52600d96cc6f4d38098e0645be53ecbfc8a811\"\u003e\u003ccode\u003e5a52600\u003c/code\u003e\u003c/a\u003e Pass maxAllocation to Brotli and Zstd decoders (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16844\"\u003e#16844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/541add0f7f5486ef15834da51d8dd983ec12e2b3\"\u003e\u003ccode\u003e541add0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/270800e5d336913606493a562c8200ecf321a0c1\"\u003e\u003ccode\u003e270800e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/3d45a1e4e8eb99144f716e54be5ac57e525fa7ca\"\u003e\u003ccode\u003e3d45a1e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/75127cab731ee35068d1f0667bffa188bc332f5d\"\u003e\u003ccode\u003e75127ca\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.13.Final...netty-4.2.15.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.core:jackson-core` from 2.21.3 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/d763562443cc9d6e224a6265ca3710195c813cf5\"\u003e\u003ccode\u003ed763562\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/e5c69fe5f7be957490d52dae70787e7a8138ddda\"\u003e\u003ccode\u003ee5c69fe\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0ba6a369eaa19a71b2b63fe40b1e9d317c0eb522\"\u003e\u003ccode\u003e0ba6a36\u003c/code\u003e\u003c/a\u003e Bump version after release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/b106011025f6447695e21ddbb9fd3952d284d10c\"\u003e\u003ccode\u003eb106011\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/18a7fe416a0bf666f6c2ddc6da883bc96382dd2d\"\u003e\u003ccode\u003e18a7fe4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/503a14ffa4a74ad56a02fd25f0cd997df163c647\"\u003e\u003ccode\u003e503a14f\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/ab95bc0056119f08ef721849be5e5f2c256b82cd\"\u003e\u003ccode\u003eab95bc0\u003c/code\u003e\u003c/a\u003e ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0a4b8dedee08e159fddca5eb8e812c1ad881017a\"\u003e\u003ccode\u003e0a4b8de\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/719a42f3676ab3c10e3cd057966807b2206151e7\"\u003e\u003ccode\u003e719a42f\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/92488484b64bc348c43e5a7ff910d93c2f9e9b9c\"\u003e\u003ccode\u003e9248848\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-core/compare/jackson-core-2.21.3...jackson-core-2.22.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.jk1.dependency-license-report` from 3.1.2 to 3.1.3\n\nUpdates `io.sentry.jvm.gradle` from 6.6.0 to 6.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-android-gradle-plugin/releases\"\u003eio.sentry.jvm.gradle's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.10.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the Kotlin 2.4 compiler in the Compose tracing compiler plugin (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompose tracing no longer adds the Sentry modifier multiple times for chained modifiers (e.g. \u003ccode\u003eModifier.fillMaxSize().padding()\u003c/code\u003e) on Kotlin 2.2 and newer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump Android SDK from v8.43.0 to v8.43.1 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1261\"\u003e#1261\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8431\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.43.0...8.43.1\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eBump CLI from v3.4.3 to v3.5.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1251\"\u003e#1251\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#350\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/compare/3.4.3...3.5.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edebug\u003c/code\u003e extension property is now typed as \u003ccode\u003eProperty\u0026lt;Boolean\u0026gt;\u003c/code\u003e instead of \u003ccode\u003eProperty\u0026lt;Boolean?\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.9.0\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDefer instrumentation log directory creation to execution time and use variant-specific paths to prevent log file corruption during parallel variant transforms (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1236\"\u003e#1236\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump CLI from v3.4.2 to v3.4.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1215\"\u003e#1215\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#343\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/compare/3.4.2...3.4.3\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eBump Android SDK from v8.42.0 to v8.43.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1241\"\u003e#1241\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8430\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.42.0...8.43.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.8.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFail fast with a clear error when Snapshots feature is used with AGP 7.x (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1212\"\u003e#1212\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.8.0\u003c/h2\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump Android SDK from v8.41.0 to v8.42.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1207\"\u003e#1207\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8420\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.41.0...8.42.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.7.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-android-gradle-plugin/blob/main/CHANGELOG.md\"\u003eio.sentry.jvm.gradle's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.10.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the Kotlin 2.4 compiler in the Compose tracing compiler plugin (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompose tracing no longer adds the Sentry modifier multiple times for chained modifiers (e.g. \u003ccode\u003eModifier.fillMaxSize().padding()\u003c/code\u003e) on Kotlin 2.2 and newer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eThe published Gradle plugin and \u003ccode\u003esentry-snapshots-runtime\u003c/code\u003e POMs no longer declare a transitive \u003ccode\u003ekotlin-stdlib\u003c/code\u003e dependency (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1276\"\u003e#1276\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump Android SDK from v8.43.0 to v8.43.1 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1261\"\u003e#1261\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8431\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.43.0...8.43.1\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eBump CLI from v3.4.3 to v3.5.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1251\"\u003e#1251\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#350\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/compare/3.4.3...3.5.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAPI Change...\n\n_Description has been truncated_","html_url":"https://github.com/digitalservicebund/ris-norms/pull/2335","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalservicebund%2Fris-norms/issues/2335","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2335/packages"},{"uuid":"4585313286","node_id":"PR_kwDOFx0z0M7igGO9","number":1883,"state":"closed","title":"Bump org.sonarqube from 4.4.1.3373 to 7.3.1.8318","user":"dependabot[bot]","labels":["Stale","dependencies","java"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-06-19T01:16:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-04T02:41:27.000Z","updated_at":"2026-06-19T01:17:17.000Z","time_to_close":1290922,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"4.4.1.3373","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 4.4.1.3373 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=4.4.1.3373\u0026new-version=7.3.1.8318)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot 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/corda/corda-api/pull/1883","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/corda%2Fcorda-api/issues/1883","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1883/packages"},{"uuid":"4584421743","node_id":"PR_kwDOHW4HaM7idKMe","number":2121,"state":"open","title":"chore(deps): bump org.sonarqube from 7.3.0.8198 to 7.3.1.8318","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-03T23:29:21.000Z","updated_at":"2026-06-03T23:34:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.3.0.8198 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.3.0.8198\u0026new-version=7.3.1.8318)](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/microsoft/kiota-java/pull/2121","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fkiota-java/issues/2121","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2121/packages"},{"uuid":"4584410113","node_id":"PR_kwDOBM-Q_c7idHta","number":3663,"state":"open","title":"Bump the gradle-version-updates group in /hooks/persistence-defectdojo/hook with 2 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-03T23:26:59.000Z","updated_at":"2026-06-03T23:28:06.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"gradle-version-updates","update_count":2,"packages":[{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.21.3","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318"}],"path":"/hooks/persistence-defectdojo/hook","ecosystem":"maven"},"body":"Bumps the gradle-version-updates group in /hooks/persistence-defectdojo/hook with 2 updates: [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) and org.sonarqube.\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.21.3 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/112e8591b5e14dff30c278c142d8111231c3a48f\"\u003e\u003ccode\u003e112e859\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2cae2ce236587ee18c58e40e01d432a077b3e7ae\"\u003e\u003ccode\u003e2cae2ce\u003c/code\u003e\u003c/a\u003e Prep for 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7955d2113f21d1027f0b643e5fbca4a1feae5964\"\u003e\u003ccode\u003e7955d21\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8922a05c6e46f790b67e64e15585eb070b6ebc6d\"\u003e\u003ccode\u003e8922a05\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/1fa994366741173fb38bc7c194666819ade60f6d\"\u003e\u003ccode\u003e1fa9943\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/d1abd31e4fec3035965d57a05a6256171ea8d980\"\u003e\u003ccode\u003ed1abd31\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.21.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2aaea43db8480aa7d405ebc0de503cffc864f6f6\"\u003e\u003ccode\u003e2aaea43\u003c/code\u003e\u003c/a\u003e Prep for 2.21.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/902ec69efea40cdf1647c6fb49fb78734a88f3e6\"\u003e\u003ccode\u003e902ec69\u003c/code\u003e\u003c/a\u003e Update Woodstox/stax2-api (to 7.2.0/4.3.0)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/257064709f8ea9ca84ea5d569080f9daacc0e017\"\u003e\u003ccode\u003e2570647\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/9d3a9d54e40312ef0ac9192d599b59b541f65fb8\"\u003e\u003ccode\u003e9d3a9d5\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.21.3...jackson-bom-2.22.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.sonarqube` from 7.3.0.8198 to 7.3.1.8318\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/secureCodeBox/secureCodeBox/pull/3663","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/secureCodeBox%2FsecureCodeBox/issues/3663","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3663/packages"},{"uuid":"4584335302","node_id":"PR_kwDOGdHfQM7ic3lc","number":2637,"state":"open","title":"Bump org.sonarqube from 7.3.0.8198 to 7.3.1.8318","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-03T23:10:51.000Z","updated_at":"2026-06-03T23:16:34.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.3.0.8198 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.3.0.8198\u0026new-version=7.3.1.8318)](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/wrk-tafel/admin/pull/2637","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/wrk-tafel%2Fadmin/issues/2637","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2637/packages"},{"uuid":"4490923096","node_id":"PR_kwDODf4ejs7dv_2n","number":60,"state":"closed","title":"build(deps): bump the gradle group across 1 directory with 32 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-23T07:07:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-21T01:10:13.000Z","updated_at":"2026-05-23T07:07:51.000Z","time_to_close":194256,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"gradle","update_count":32,"packages":[{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"commons-io:commons-io","old_version":"2.21.0","new_version":"2.22.0"},{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.21.2","new_version":"2.21.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.flywaydb:flyway-core","old_version":"12.3.0","new_version":"12.6.1"},{"name":"org.flywaydb:flyway-database-hsqldb","old_version":"12.3.0","new_version":"12.6.1"},{"name":"org.xerial:sqlite-jdbc","old_version":"3.51.3.0","new_version":"3.53.1.0","repository_url":"https://github.com/xerial/sqlite-jdbc"},{"name":"org.graalvm.js:js-community","old_version":"25.0.2","new_version":"25.0.3","repository_url":"https://github.com/oracle/graal"},{"name":"org.graalvm.js:js-scriptengine","old_version":"25.0.2","new_version":"25.0.3","repository_url":"https://github.com/graalvm/graaljs"},{"name":"com.graphql-java:graphql-java","old_version":"25.0","new_version":"26.0","repository_url":"https://github.com/graphql-java/graphql-java"},{"name":"org.apache.groovy:groovy-all","old_version":"5.0.5","new_version":"5.0.6","repository_url":"https://github.com/apache/groovy"},{"name":"io.grpc:grpc-protobuf","old_version":"1.80.0","new_version":"1.81.0","repository_url":"https://github.com/grpc/grpc-java"},{"name":"com.drewnoakes:metadata-extractor","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/drewnoakes/metadata-extractor"},{"name":"dev.langchain4j:langchain4j","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-azure-open-ai","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-ollama","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-open-ai","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-google-ai-gemini","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"org.bouncycastle:bcmail-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.bouncycastle:bcpkix-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"io.swagger:swagger-compat-spec-parser","old_version":"1.0.75","new_version":"1.0.76"},{"name":"io.swagger.parser.v3:swagger-parser","old_version":"2.1.39","new_version":"2.1.42","repository_url":"https://github.com/swagger-api/swagger-parser"},{"name":"org.thymeleaf:thymeleaf","old_version":"3.1.3.RELEASE","new_version":"3.1.5.RELEASE"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.7","new_version":"4.0.8"},{"name":"org.seleniumhq.selenium:selenium-java","old_version":"4.41.0","new_version":"4.44.0","repository_url":"https://github.com/SeleniumHQ/selenium"},{"name":"com.sun.xml.messaging.saaj:saaj-impl","old_version":"3.0.4","new_version":"3.0.5"},{"name":"org.slf4j:jul-to-slf4j","old_version":"2.0.17","new_version":"2.0.18"},{"name":"org.junit.jupiter:junit-jupiter","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"com.github.weisj:jsvg","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/weisJ/jsvg"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"io.freefair.lombok","old_version":"9.2.0","new_version":"9.5.0","repository_url":"https://github.com/freefair/gradle-plugins"},{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| commons-io:commons-io | `2.21.0` | `2.22.0` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.21.2` | `2.21.3` |\n| org.flywaydb:flyway-core | `12.3.0` | `12.6.1` |\n| org.flywaydb:flyway-database-hsqldb | `12.3.0` | `12.6.1` |\n| [org.xerial:sqlite-jdbc](https://github.com/xerial/sqlite-jdbc) | `3.51.3.0` | `3.53.1.0` |\n| [org.graalvm.js:js-community](https://github.com/oracle/graal) | `25.0.2` | `25.0.3` |\n| [org.graalvm.js:js-scriptengine](https://github.com/graalvm/graaljs) | `25.0.2` | `25.0.3` |\n| [com.graphql-java:graphql-java](https://github.com/graphql-java/graphql-java) | `25.0` | `26.0` |\n| [org.apache.groovy:groovy-all](https://github.com/apache/groovy) | `5.0.5` | `5.0.6` |\n| [io.grpc:grpc-protobuf](https://github.com/grpc/grpc-java) | `1.80.0` | `1.81.0` |\n| [com.drewnoakes:metadata-extractor](https://github.com/drewnoakes/metadata-extractor) | `2.19.0` | `2.20.0` |\n| [dev.langchain4j:langchain4j](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-azure-open-ai](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-ollama](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-open-ai](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-google-ai-gemini](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [org.bouncycastle:bcmail-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.bouncycastle:bcpkix-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| io.swagger:swagger-compat-spec-parser | `1.0.75` | `1.0.76` |\n| [io.swagger.parser.v3:swagger-parser](https://github.com/swagger-api/swagger-parser) | `2.1.39` | `2.1.42` |\n| org.thymeleaf:thymeleaf | `3.1.3.RELEASE` | `3.1.5.RELEASE` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.7` | `4.0.8` |\n| [org.seleniumhq.selenium:selenium-java](https://github.com/SeleniumHQ/selenium) | `4.41.0` | `4.44.0` |\n| com.sun.xml.messaging.saaj:saaj-impl | `3.0.4` | `3.0.5` |\n| org.slf4j:jul-to-slf4j | `2.0.17` | `2.0.18` |\n| [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [com.github.weisj:jsvg](https://github.com/weisJ/jsvg) | `2.0.0` | `2.1.0` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [io.freefair.lombok](https://github.com/freefair/gradle-plugins) | `9.2.0` | `9.5.0` |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n\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 `commons-io:commons-io` from 2.21.0 to 2.22.0\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.21.2 to 2.21.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/374fbd08ee91a6c91626bae1d6497df21c89b541\"\u003e\u003ccode\u003e374fbd0\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.21.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7059df78cc36832349acad026169ff890f4c718c\"\u003e\u003ccode\u003e7059df7\u003c/code\u003e\u003c/a\u003e Prep for 2.21.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2fd60bdab3228f6b99dce81326d9fd7eaf587401\"\u003e\u003ccode\u003e2fd60bd\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/b82a3640491f66be2e56bef377b5002cd9d1567b\"\u003e\u003ccode\u003eb82a364\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/ef4e013e95fc64583b0a414711648a84fc50be46\"\u003e\u003ccode\u003eef4e013\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/536ae51c1db9dfbfc8dda697ccfd6545cf626d2b\"\u003e\u003ccode\u003e536ae51\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/536c5339035643fdca46ddd947f253afd072f764\"\u003e\u003ccode\u003e536c533\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/426b778e5ea490d164e572a63319c7cf2f362f2f\"\u003e\u003ccode\u003e426b778\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.18.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/a73cda9be3e57f29c53fea748f1f867eaa1457ab\"\u003e\u003ccode\u003ea73cda9\u003c/code\u003e\u003c/a\u003e Prep for 2.18.7 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/76b4a05087a9e42eb1b26f59d5b7028b0496da5e\"\u003e\u003ccode\u003e76b4a05\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.21.2...jackson-bom-2.21.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-core` from 12.3.0 to 12.6.1\n\nUpdates `org.flywaydb:flyway-database-hsqldb` from 12.3.0 to 12.6.1\n\nUpdates `org.flywaydb:flyway-database-hsqldb` from 12.3.0 to 12.6.1\n\nUpdates `org.xerial:sqlite-jdbc` from 3.51.3.0 to 3.53.1.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.1.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003esqlite\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to sqlite 3.53.1 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/8263322\"\u003e8263322\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔄️ Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erewrite amalgamation_version.sh for POSIX shell (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/52522d0\"\u003e52522d0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix android usage (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/7ef8e0f\"\u003e7ef8e0f\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 gummy-bears-api-24 to 0.14.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/a28d6ce\"\u003ea28d6ce\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gummy-bears-api-24 to 0.13.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/248e1e9\"\u003e248e1e9\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 org.jreleaser:jreleaser-maven-plugin (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/396fdf3\"\u003e396fdf3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.tngtech.archunit:archunit-junit5 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/458abe1\"\u003e458abe1\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\u003econditionally bootstrap SLF4J API JAR (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/bc7d223\"\u003ebc7d223\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emake JAVA_CLASSPATH configurable (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/5aa7426\"\u003e5aa7426\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, Michael Osipov\u003c/p\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\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\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/b01674f0bffc45b4c213dd873867e64b9194104b\"\u003e\u003ccode\u003eb01674f\u003c/code\u003e\u003c/a\u003e chore(release): 3.53.1.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/e6719db995a1fee385f0421cee1eaf78e3587013\"\u003e\u003ccode\u003ee6719db\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/826332265f8f1069faeb4a61761a8651efaefb0c\"\u003e\u003ccode\u003e8263322\u003c/code\u003e\u003c/a\u003e feat(sqlite): upgrade to sqlite 3.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/396fdf30d850ca78dad59bccaafae25c1e86998a\"\u003e\u003ccode\u003e396fdf3\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump org.jreleaser:jreleaser-maven-plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/bc7d22394987d5c84706c844f0b95c7856e3f294\"\u003e\u003ccode\u003ebc7d223\u003c/code\u003e\u003c/a\u003e build: conditionally bootstrap SLF4J API JAR\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/4cd221a72480a681f91f78f9d8a99372daf423ce\"\u003e\u003ccode\u003e4cd221a\u003c/code\u003e\u003c/a\u003e chore: remove execute bit on non-executable files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/5aa74267e6a01c071ec88d1882de8aeec0d8d22a\"\u003e\u003ccode\u003e5aa7426\u003c/code\u003e\u003c/a\u003e build: make JAVA_CLASSPATH configurable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/52522d02ee5cffa8f283054d8bf5a5165206caac\"\u003e\u003ccode\u003e52522d0\u003c/code\u003e\u003c/a\u003e refactor: rewrite amalgamation_version.sh for POSIX shell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/a28d6cef66da00f8559445dfacd9f34a871509d6\"\u003e\u003ccode\u003ea28d6ce\u003c/code\u003e\u003c/a\u003e build(deps): bump gummy-bears-api-24 to 0.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/458abe135cad6e20f00504418a09946c81c8dbd7\"\u003e\u003ccode\u003e458abe1\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump com.tngtech.archunit:archunit-junit5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/xerial/sqlite-jdbc/compare/3.51.3.0...3.53.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.graalvm.js:js-community` from 25.0.2 to 25.0.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/oracle/graal/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.graalvm.js:js-scriptengine` from 25.0.2 to 25.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oracle/graaljs/blob/vm-25.0.3/CHANGELOG.md\"\u003eorg.graalvm.js:js-scriptengine's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 25.0.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.22.0.\u003c/li\u003e\n\u003cli\u003eLimited Chrome inspector remote debugging to localhost.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 25.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2025 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 22.17.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-intl-duration-format\"\u003e\u003ccode\u003eIntl.DurationFormat\u003c/code\u003e\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.text-encoding\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.CONSTRAINED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-defer-import-eval\"\u003e\u003ccode\u003eimport defer\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eUpsert\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eEnabled source phase imports from WebAssembly modules (\u003ccode\u003eimport source mod from \u0026quot;./mod.wasm\u0026quot;\u003c/code\u003e) by default if the \u003ccode\u003ejs.webassembly\u003c/code\u003e option is enabled and the \u003ccode\u003ejs.source-phase-imports\u003c/code\u003e option is not explicitly set to \u003ccode\u003efalse\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.13.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-error\"\u003e\u003ccode\u003eError.isError\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-try\"\u003e\u003ccode\u003ePromise.try\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-atomics-microwait\"\u003e\u003ccode\u003eAtomics.pause\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003eUint8Array to/from base64 and hex\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-source-phase-imports\"\u003eSource Phase Imports\u003c/a\u003e proposal. It is available behind the experimental option (\u003ccode\u003e--js.source-phase-imports\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/esm-integration\"\u003eWebAssembly/ES Module Integration\u003c/a\u003e proposal, allowing \u003ccode\u003e.wasm\u003c/code\u003e modules to be loaded via \u003ccode\u003eimport\u003c/code\u003e statements.\u003c/li\u003e\n\u003cli\u003eImplemented basic Worker API (resembling the API available in \u003ccode\u003ed8\u003c/code\u003e). It is available behind the experimental option \u003ccode\u003e--js.worker\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdded option \u003ccode\u003ejs.stack-trace-api\u003c/code\u003e that enables/disables \u003ccode\u003eError.captureStackTrace\u003c/code\u003e, \u003ccode\u003eError.prepareStackTrace\u003c/code\u003e and \u003ccode\u003eError.stackTraceLimit\u003c/code\u003e. These non-standard extensions are disabled by default (unless \u003ccode\u003ejs.v8-compat\u003c/code\u003e or \u003ccode\u003ejs.nashorn-compat\u003c/code\u003e is used).\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.webassembly\u003c/code\u003e stable.\u003c/li\u003e\n\u003cli\u003eMade options \u003ccode\u003ejs.load\u003c/code\u003e, \u003ccode\u003ejs.print\u003c/code\u003e, and \u003ccode\u003ejs.graal-builtin\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.locale\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e. Its value, if non-empty, must be a well-formed Unicode BCP 47 locale identifier and is now validated.\u003c/li\u003e\n\u003cli\u003eAdded an experimental \u003ccode\u003ejava.util.concurrent.Executor\u003c/code\u003e that can be used to post tasks into the event loop thread in \u003ccode\u003egraal-nodejs\u003c/code\u003e. It is available as \u003ccode\u003erequire('node:graal').eventLoopExecutor\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ccode\u003eTextDecoder\u003c/code\u003e and \u003ccode\u003eTextEncoder\u003c/code\u003e APIs of the \u003ca href=\"https://encoding.spec.whatwg.org/\"\u003eWHATWG Encoding Standard\u003c/a\u003e. They are available behind the experimental option (\u003ccode\u003e--js.text-encoding\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regex-escaping\"\u003e\u003ccode\u003eRegExp.escape\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regexp-modifiers\"\u003eRegular Expression Pattern Modifiers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003eIterator Sequencing\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.1.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2024 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-redeclarable-global-eval-vars\"\u003eMake eval-introduced global vars redeclarable\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-float16array\"\u003eFloat16Array\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-array-from-async\"\u003eArray.fromAsync\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-resizablearraybuffer\"\u003eResizable and Growable ArrayBuffers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 20.13.1.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.esm-eval-returns-exports\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/threads\"\u003eWebAssembly threads\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-with-resolvers\"\u003ePromise.withResolvers\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplementation of \u003ca href=\"https://github.com/tc39/proposal-async-iterator-helpers\"\u003eAsync Iterator Helpers\u003c/a\u003e proposal (that was split out from Iterator Helpers proposal) was moved behind the experimental option \u003ccode\u003e--js.async-iterator-helpers\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-usv-string\"\u003eWell-Formed Unicode Strings\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-json-parse-with-source\"\u003eJSON.parse source text access\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 18.18.2.\u003c/li\u003e\n\u003cli\u003eWebAssembly support in Node.js has been enabled by default. It can be disabled using the experimental option \u003ccode\u003e--js.webassembly=false\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/eba5be12437ddf85b56b6d50180ce93e6769f72b\"\u003e\u003ccode\u003eeba5be1\u003c/code\u003e\u003c/a\u003e release GraalVM 25.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/8df2eb01cb3db4a30762d4bf42d206048f251242\"\u003e\u003ccode\u003e8df2eb0\u003c/code\u003e\u003c/a\u003e [GR-74224] Backport to 25.0: Restrict Chrome Inspector to localhost.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/af7f1c39a9e4ec97b7566467751eac01a2052e5e\"\u003e\u003ccode\u003eaf7f1c3\u003c/code\u003e\u003c/a\u003e [GR-73523] Backport to 25.0: Fix PE bailout in eval().\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/768265bdcffb8e3f68f76fc072b286263daff706\"\u003e\u003ccode\u003e768265b\u003c/code\u003e\u003c/a\u003e Run basic smoke tests in the gate.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/3a36e8d60d2662fe0f940a5e95b100bd262225c0\"\u003e\u003ccode\u003e3a36e8d\u003c/code\u003e\u003c/a\u003e Restrict Chrome Inspector to localhost\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/131723667b91e4a6d4a454775768332c4d2996d7\"\u003e\u003ccode\u003e1317236\u003c/code\u003e\u003c/a\u003e Add regression test for eval() compilation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/f4583082cb7e3214bcc348d8826f2f78e95952ba\"\u003e\u003ccode\u003ef458308\u003c/code\u003e\u003c/a\u003e ScriptNode.runEval should create function object behind a TruffleBoundary.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/45949a471dc38a93dc07db5b3ce9a3f15dc1e95a\"\u003e\u003ccode\u003e45949a4\u003c/code\u003e\u003c/a\u003e [GR-72571] Backport to 25.0: Transient aux-engine-cache test failure.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/6e789095b2500bc40245b393ff29a56b790dfc1b\"\u003e\u003ccode\u003e6e78909\u003c/code\u003e\u003c/a\u003e Work around transient aux-engine-cache test failure due to speculative optimi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/bae1c8504b284238aa1f3140abddbb2592d7b82a\"\u003e\u003ccode\u003ebae1c85\u003c/code\u003e\u003c/a\u003e [GR-72939] Backport to 25.0.3: Upgrading Node.js version used by graal-nodejs...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graalvm/graaljs/compare/vm-25.0.2...vm-25.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.graalvm.js:js-scriptengine` from 25.0.2 to 25.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oracle/graaljs/blob/vm-25.0.3/CHANGELOG.md\"\u003eorg.graalvm.js:js-scriptengine's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 25.0.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.22.0.\u003c/li\u003e\n\u003cli\u003eLimited Chrome inspector remote debugging to localhost.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 25.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2025 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 22.17.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-intl-duration-format\"\u003e\u003ccode\u003eIntl.DurationFormat\u003c/code\u003e\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.text-encoding\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.CONSTRAINED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-defer-import-eval\"\u003e\u003ccode\u003eimport defer\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eUpsert\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eEnabled source phase imports from WebAssembly modules (\u003ccode\u003eimport source mod from \u0026quot;./mod.wasm\u0026quot;\u003c/code\u003e) by default if the \u003ccode\u003ejs.webassembly\u003c/code\u003e option is enabled and the \u003ccode\u003ejs.source-phase-imports\u003c/code\u003e option is not explicitly set to \u003ccode\u003efalse\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.13.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-error\"\u003e\u003ccode\u003eError.isError\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-try\"\u003e\u003ccode\u003ePromise.try\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-atomics-microwait\"\u003e\u003ccode\u003eAtomics.pause\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003eUint8Array to/from base64 and hex\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-source-phase-imports\"\u003eSource Phase Imports\u003c/a\u003e proposal. It is available behind the experimental option (\u003ccode\u003e--js.source-phase-imports\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/esm-integration\"\u003eWebAssembly/ES Module Integration\u003c/a\u003e proposal, allowing \u003ccode\u003e.wasm\u003c/code\u003e modules to be loaded via \u003ccode\u003eimport\u003c/code\u003e statements.\u003c/li\u003e\n\u003cli\u003eImplemented basic Worker API (resembling the API available in \u003ccode\u003ed8\u003c/code\u003e). It is available behind the experimental option \u003ccode\u003e--js.worker\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdded option \u003ccode\u003ejs.stack-trace-api\u003c/code\u003e that enables/disables \u003ccode\u003eError.captureStackTrace\u003c/code\u003e, \u003ccode\u003eError.prepareStackTrace\u003c/code\u003e and \u003ccode\u003eError.stackTraceLimit\u003c/code\u003e. These non-standard extensions are disabled by default (unless \u003ccode\u003ejs.v8-compat\u003c/code\u003e or \u003ccode\u003ejs.nashorn-compat\u003c/code\u003e is used).\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.webassembly\u003c/code\u003e stable.\u003c/li\u003e\n\u003cli\u003eMade options \u003ccode\u003ejs.load\u003c/code\u003e, \u003ccode\u003ejs.print\u003c/code\u003e, and \u003ccode\u003ejs.graal-builtin\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.locale\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e. Its value, if non-empty, must be a well-formed Unicode BCP 47 locale identifier and is now validated.\u003c/li\u003e\n\u003cli\u003eAdded an experimental \u003ccode\u003ejava.util.concurrent.Executor\u003c/code\u003e that can be used to post tasks into the event loop thread in \u003ccode\u003egraal-nodejs\u003c/code\u003e. It is available as \u003ccode\u003erequire('node:graal').eventLoopExecutor\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ccode\u003eTextDecoder\u003c/code\u003e and \u003ccode\u003eTextEncoder\u003c/code\u003e APIs of the \u003ca href=\"https://encoding.spec.whatwg.org/\"\u003eWHATWG Encoding Standard\u003c/a\u003e. They are available behind the experimental option (\u003ccode\u003e--js.text-encoding\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regex-escaping\"\u003e\u003ccode\u003eRegExp.escape\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regexp-modifiers\"\u003eRegular Expression Pattern Modifiers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003eIterator Sequencing\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.1.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2024 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-redeclarable-global-eval-vars\"\u003eMake eval-introduced global vars redeclarable\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-float16array\"\u003eFloat16Array\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-array-from-async\"\u003eArray.fromAsync\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-resizablearraybuffer\"\u003eResizable and Growable ArrayBuffers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 20.13.1.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.esm-eval-returns-exports\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/threads\"\u003eWebAssembly threads\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-with-resolvers\"\u003ePromise.withResolvers\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplementation of \u003ca href=\"https://github.com/tc39/proposal-async-iterator-helpers\"\u003eAsync Iterator Helpers\u003c/a\u003e proposal (that was split out from Iterator Helpers proposal) was moved behind the experimental option \u003ccode\u003e--js.async-iterator-helpers\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-usv-string\"\u003eWell-Formed Unicode Strings\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-json-parse-with-source\"\u003eJSON.parse source text access\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 18.18.2.\u003c/li\u003e\n\u003cli\u003eWebAssembly support in Node.js has been enabled by default. It can be disabled using the experimental option \u003ccode\u003e--js.webassembly=false\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/eba5be12437ddf85b56b6d50180ce93e6769f72b\"\u003e\u003ccode\u003eeba5be1\u003c/code\u003e\u003c/a\u003e release GraalVM 25.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/8df2eb01cb3db4a30762d4bf42d206048f251242\"\u003e\u003ccode\u003e8df2eb0\u003c/code\u003e\u003c/a\u003e [GR-74224] Backport to 25.0: Restrict Chrome Inspector to localhost.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/af7f1c39a9e4ec97b7566467751eac01a2052e5e\"\u003e\u003ccode\u003eaf7f1c3\u003c/code\u003e\u003c/a\u003e [GR-73523] Backport to 25.0: Fix PE bailout in eval().\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/768265bdcffb8e3f68f76fc072b286263daff706\"\u003e\u003ccode\u003e768265b\u003c/code\u003e\u003c/a\u003e Run basic smoke tests in the gate.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/3a36e8d60d2662fe0f940a5e95b100bd262225c0\"\u003e\u003ccode\u003e3a36e8d\u003c/code\u003e\u003c/a\u003e Restrict Chrome Inspector to localhost\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/131723667b91e4a6d4a454775768332c4d2996d7\"\u003e\u003ccode\u003e1317236\u003c/code\u003e\u003c/a\u003e Add regression test for eval() compilation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/f4583082cb7e3214bcc348d8826f2f78e95952ba\"\u003e\u003ccode\u003ef458308\u003c/code\u003e\u003c/a\u003e ScriptNode.runEval should create function object behind a TruffleBoundary.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/45949a471dc38a93dc07db5b3ce9a3f15dc1e95a\"\u003e\u003ccode\u003e45949a4\u003c/code\u003e\u003c/a\u003e [GR-72571] Backport to 25.0: Transient aux-engine-cache test failure.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/6e789095b2500bc40245b393ff29a56b790dfc1b\"\u003e\u003ccode\u003e6e78909\u003c/code\u003e\u003c/a\u003e Work around transient aux-engine-cache test failure due to speculative optimi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/bae1c8504b284238aa1f3140abddbb2592d7b82a\"\u003e\u003ccode\u003ebae1c85\u003c/code\u003e\u003c/a\u003e [GR-72939] Backport to 25.0.3: Upgrading Node.js version used by graal-nodejs...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graalvm/graaljs/compare/vm-25.0.2...vm-25.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.graphql-java:graphql-java` from 25.0 to 26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-java/graphql-java/releases\"\u003ecom.graphql-java:graphql-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e26.0\u003c/h2\u003e\n\u003cp\u003eThis is the 26.0 release of graphql-java. Highlights are summarized below; the full list of merged PRs is at the end.\u003c/p\u003e\n\u003ch2\u003e⚠️ Breaking Changes\u003c/h2\u003e\n\u003ch3\u003eQuery complexity limits are now enforced by default\u003c/h3\u003e\n\u003cp\u003eNew \u003ccode\u003eQueryComplexityLimits\u003c/code\u003e validation checks \u003ccode\u003emaxDepth\u003c/code\u003e (default \u003cstrong\u003e100\u003c/strong\u003e) and \u003ccode\u003emaxFieldsCount\u003c/code\u003e (default \u003cstrong\u003e100,000\u003c/strong\u003e) as part of standard validation. Queries exceeding these limits will now fail with new \u003ccode\u003eMaxQueryDepthExceeded\u003c/code\u003e / \u003ccode\u003eMaxQueryFieldsExceeded\u003c/code\u003e validation errors.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet custom limits via \u003ccode\u003eGraphQLContext\u003c/code\u003e using \u003ccode\u003eQueryComplexityLimits.KEY\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eDisable entirely with \u003ccode\u003eQueryComplexityLimits.NONE\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIntroduced in \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4256\"\u003e#4256\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eValidation rule filtering API changed\u003c/h3\u003e\n\u003cp\u003eIn \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4228\"\u003e#4228\u003c/a\u003e the rule-filter predicate changed from \u003ccode\u003ePredicate\u0026lt;Class\u0026lt;?\u0026gt;\u0026gt;\u003c/code\u003e to \u003ccode\u003ePredicate\u0026lt;OperationValidationRule\u0026gt;\u003c/code\u003e in \u003ccode\u003eValidator.validateDocument(...)\u003c/code\u003e and \u003ccode\u003eParseAndValidate.parseAndValidate(...)\u003c/code\u003e. Callers that filtered by class (e.g. \u003ccode\u003erule -\u0026gt; rule != NoUnusedFragments.class\u003c/code\u003e) must migrate to the enum (\u003ccode\u003erule -\u0026gt; rule != OperationValidationRule.NO_UNUSED_FRAGMENTS\u003c/code\u003e). The \u003ccode\u003e@Internal\u003c/code\u003e classes \u003ccode\u003eAbstractRule\u003c/code\u003e and \u003ccode\u003eRulesVisitor\u003c/code\u003e were removed.\u003c/p\u003e\n\u003ch3\u003eBuilt-in directive handling consolidated (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4229\"\u003e#4229\u003c/a\u003e)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo\u003c/code\u003e was removed. Replace usages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo.isGraphqlSpecifiedDirective(...)\u003c/code\u003e → \u003ccode\u003eDirectives.isBuiltInDirective(...)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo.GRAPHQL_SPECIFICATION_DIRECTIVES\u003c/code\u003e → \u003ccode\u003eDirectives.BUILT_IN_DIRECTIVES\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo.GRAPHQL_SPECIFICATION_DIRECTIVE_MAP\u003c/code\u003e → \u003ccode\u003eDirectives.BUILT_IN_DIRECTIVES_MAP\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eDirective ordering is now consistent: all 7 built-in directives appear first, followed by user-defined directives.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGraphQLSchema.Builder.clearDirectives()\u003c/code\u003e was initially removed then re-added in \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4276\"\u003e#4276\u003c/a\u003e with new semantics — it clears all \u003ccode\u003eadditionalDirectives\u003c/code\u003e, but built-in directives are always re-added automatically at build time.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOneOf inhabitability validation (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4248\"\u003e#4248\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eNew validator rejects OneOf input types that cannot be populated with a finite value (e.g. \u003ccode\u003einput A @oneOf { a: A }\u003c/code\u003e). Schemas that previously validated may now be rejected.\u003c/p\u003e\n\u003ch3\u003eNon-null field validation for code-built schemas (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4194\"\u003e#4194\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eCode-built schemas now perform the same deprecated-on-non-null field validation as SDL-built ones. Schemas relying on the gap may now fail validation.\u003c/p\u003e\n\u003ch3\u003e\u003ccode\u003eGraphQLSchema.getCodeRegistry()\u003c/code\u003e is no longer \u003ccode\u003e@Nullable\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4247\"\u003e#4247\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eThe return type was incorrectly annotated nullable. Callers may now drop redundant null checks; downstream nullness tooling will reflect the change.\u003c/p\u003e\n\u003ch3\u003eJSpecify nullability annotations rolled out broadly\u003c/h3\u003e\n\u003cp\u003eWaves 2 and 3 (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4184\"\u003e#4184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4274\"\u003e#4274\u003c/a\u003e) plus many individual PRs annotated hundreds of classes across \u003ccode\u003egraphql.analysis\u003c/code\u003e, \u003ccode\u003egraphql.execution\u003c/code\u003e, \u003ccode\u003egraphql.language\u003c/code\u003e, \u003ccode\u003egraphql.schema\u003c/code\u003e and others with \u003ccode\u003e@NullMarked\u003c/code\u003e/\u003ccode\u003e@NullUnmarked\u003c/code\u003e/\u003ccode\u003e@Nullable\u003c/code\u003e. Kotlin and other null-aware callers will now see stricter nullability contracts; code that relied on previously-permissive signatures may need adjustment.\u003c/p\u003e\n\u003ch2\u003e✨ New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eGraphQLSchema.FastBuilder\u003c/code\u003e\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4197\"\u003e#4197\u003c/a\u003e) — a more restrictive but \u003cstrong\u003e~5× faster\u003c/strong\u003e schema builder that reduces both time and memory for large schemas.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eQuery complexity limits\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4256\"\u003e#4256\u003c/a\u003e) — depth/field-count guardrails baked into validation (see breaking changes above for the enforcement side).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eQueryAppliedDirective\u003c/code\u003e on operations and documents\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4297\"\u003e#4297\u003c/a\u003e) — directives applied at the operation/document level are now exposed as \u003ccode\u003eQueryAppliedDirective\u003c/code\u003es.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNew instrumentation hook for post-exception-handling results\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4206\"\u003e#4206\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4207\"\u003e#4207\u003c/a\u003e) — observe the \u003ccode\u003eDataFetcherResult\u003c/code\u003e after \u003ccode\u003eDataFetcherExceptionHandler\u003c/code\u003e has mapped exceptions to errors. \u003ccode\u003eChainedInstrumentation\u003c/code\u003e delegates the new hook correctly.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eGeneric \u003ccode\u003eDataFetcherResult.newBuilder(T data)\u003c/code\u003e\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4254\"\u003e#4254\u003c/a\u003e) — removes the need for explicit type witnesses on the common \u003ccode\u003eDataFetcherResult.\u0026lt;T\u0026gt;newResult().data(x)...\u003c/code\u003e pattern.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRe-added \u003ccode\u003eGraphQLSchema.Builder.clearDirectives()\u003c/code\u003e\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4276\"\u003e#4276\u003c/a\u003e) — useful with \u003ccode\u003eGraphQLSchema.transform\u003c/code\u003e to rewrite non-built-in directives; built-ins are always re-added.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003etoString()\u003c/code\u003e on AST directives holders\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4195\"\u003e#4195\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e⚡ Performance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eIncremental \u003ccode\u003e@defer\u003c/code\u003e execution starts earlier\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4174\"\u003e#4174\u003c/a\u003e) — begins processing deferred payloads as soon as the first incremental call is detected instead of waiting for the initial result to complete.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eValidation consolidation\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4228\"\u003e#4228\u003c/a\u003e) — all operation validation rules run in a single \u003ccode\u003eOperationValidator\u003c/code\u003e pass, significantly cutting validation overhead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/86afa76971b94b7887c1c3b0e5afa996ef46805b\"\u003e\u003ccode\u003e86afa76\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/95f49d95945b34ca45e9e1cc23ce1368309632fc\"\u003e\u003ccode\u003e95f49d9\u003c/code\u003e\u003c/a\u003e Bump JaCoCo to 0.8.14 for Java 25 class file support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/3af0c5cc61331ade2787bb3a0891e19750357345\"\u003e\u003ccode\u003e3af0c5c\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/a6cc631e328d7d01ea261aa21d9225294adfd155\"\u003e\u003ccode\u003ea6cc631\u003c/code\u003e\u003c/a\u003e JSpecify big wave 3 (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4274\"\u003e#4274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/d26e4d61dfa90f092b36e0756bfae31655d17751\"\u003e\u003ccode\u003ed26e4d6\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/c86eb07d9d99be6f15e1caeb7958be109cdd6ef8\"\u003e\u003ccode\u003ec86eb07\u003c/code\u003e\u003c/a\u003e Add JSpecify annotations to 10 language package classes (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4219\"\u003e#4219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/b1543882a65b1af4207c0a0626b04ae797c3a2bb\"\u003e\u003ccode\u003eb154388\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/aafbbd54f0591cc1c34de9c7d8451aff09bb4b8f\"\u003e\u003ccode\u003eaafbbd5\u003c/code\u003e\u003c/a\u003e Add JSpecify annotations to 10 language package classes (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4218\"\u003e#4218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/3e15aed1209b59e71bedf8ad6e3e46ba5b28a177\"\u003e\u003ccode\u003e3e15aed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4359\"\u003e#4359\u003c/a\u003e from graphql-java/dependabot/github_actions/actions/...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/e0ca0613e1c15a7a6c4d012e1ebba37e091ac682\"\u003e\u003ccode\u003ee0ca061\u003c/code\u003e\u003c/a\u003e Bump org.apache.groovy:groovy from 5.0.4 to 5.0.5 (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graphql-java/graphql-java/compare/v25.0...v26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.groovy:groovy-all` from 5.0.5 to 5.0.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/apache/groovy/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-protobuf` from 1.80.0 to 1.81.0\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-protobuf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eV1.81.0\u003c/h2\u003e\n\u003cp\u003eIn this release we drop support for Android API level 22 or lower (Lollipop or earlier), following Google Play Service’s \u003ca href=\"https://developers.google.com/android/guides/setup\"\u003ediscontinued updates for Lollipop (API levels 21 \u0026amp; 22)\u003c/a\u003e and now requires a minimum of API level 23 (Android 6.0 Marshmallow).\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eAPI Changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Deprecate LoadBalancer.handleResolvedAddresses(). Developers maintaining custom LoadBalancer implementations should transition to using LoadBalancer.acceptResolvedAddresses(). Unlike the deprecated method, acceptResolvedAddresses() returns a Status object, allowing the load balancer to explicitly report success or reject the update if the provided addresses or configuration are invalid. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11623\"\u003e#11623\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBehavior Changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ecore: Enable dns \u0026quot;caching\u0026quot; on Android for 30 seconds to reduce CPU impact of a refresh loop with an LB policy (0675f70af). DnsNameResolver ignores re-resolution requests on OpenJDK-like platforms if it has been too soon since the last DNS query because InetAddress.getAllByName() has a cache with a fixed entry lifetime, but this logic was disabled for Android which does not have that style of cache. Android’s cache uses the result TTL, which will rarely be less than 30 seconds. This change would probably be most noticeable when 1) changing to a different network (e.g., from wifi to mobile), 2) the server has different addresses for different networks, and 3) the app is not using AndroidChannelBuilder with an \u003ccode\u003eandroid.context.Context\u003c/code\u003e. For reference, it seems Chrome caches for 1 minute\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug Fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eopentelemetry: Fix baggage propagation, the baggage propagation for opentelemetry introduced in \u003ca href=\"https://redirect.github.com/grpc/grpc-java/pull/12389\"\u003e#12389\u003c/a\u003e was broken. The context is decided once and used for all recording for the call, thus guaranteeing all record()s have consistent information.\u003c/li\u003e\n\u003cli\u003ecore: Address a race condition where \u003ccode\u003eManagedChannelOrphanWrapper\u003c/code\u003e could incorrectly log a \u0026quot;not shutdown properly\u0026quot; warning during garbage collection when using directExecutor(). (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12705\"\u003e#12705\u003c/a\u003e) (d459338d9)\u003c/li\u003e\n\u003cli\u003exds: Fix xDS HTTP CONNECT's transport socket name bug which is now corrected to use \u003ccode\u003etypeUrl\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12740\"\u003e#12740\u003c/a\u003e) (eac9fe961)\u003c/li\u003e\n\u003cli\u003exds: Fix an issue where subchannel metrics were dropping their association with the \u003ccode\u003ebackend_service\u003c/code\u003e. This ensures xDS load balancing metrics are reported accurately. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12735\"\u003e#12735\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNew Features\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Add tcp metrics, by implementing a few of the metrics defined in \u003ca href=\"https://redirect.github.com/grpc/proposal/pull/519\"\u003eA80\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eapi: Add a CallOption for a custom label on per-RPC metrics (0e39b2967). This CallOption is copied by grpc-opentelemetry to the \u003ccode\u003egrpc.client.call.custom\u003c/code\u003e label as defined by \u003ca href=\"https://github.com/grpc/proposal/blob/master/A108-otel-custom-per-call-label.md\"\u003egRFC A108\u003c/a\u003e. See also the \u003ca href=\"https://grpc.io/docs/guides/opentelemetry-metrics/\"\u003egRPC OpenTelemetry Metrics guide\u003c/a\u003e (update \u003ca href=\"https://redirect.github.com/grpc/grpc.io/pull/1505\"\u003ein-progress\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003exds: Add support for Weighted Round Robin (WRR) load balancing driven by custom backend metrics, implementing the behavior defined in gRFC A114. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12645\"\u003e#12645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eutils: Update \u003ccode\u003eAdvancedTlsX509KeyManager\u003c/code\u003e so that developers can now preserve and use key aliases when dynamically reloading TLS certificates. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12686\"\u003e#12686\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate the \u0026quot;Outgoing Flow Control\u0026quot; section in the Manual Flow Control example to say onNext() does not block, but rather queues the messages in memory and advises developers to use CallStreamObserver.isReady() to prevent this memory exhaustion (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12700\"\u003e#12700\u003c/a\u003e) (a3a9ffcbe) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12726\"\u003e#12726\u003c/a\u003e) (65ae2efda)\u003c/li\u003e\n\u003cli\u003eexamples: Clean up Health example, and document need for grpc-services (3ed732fc0)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDependencies\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Dependencies (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12719\"\u003e#12719\u003c/a\u003e) (16e17abba). Google-auth-library: 1.42.1, animal-sniffer: 1.27, assertj-core:3.27.7, error_prone_annotations:2.48.0, proto-google-common-protos:2.64.1, google-cloud-logging:3.23.10, jetty-http2-server:12.1.7, jetty-ee10-servlet:12.1.7, lincheck:3.4, opentelemetry-api:1.60.1, opentelemetry-exporter-prometheus:1.60.1-alpha, opentelemetry-gcp-resources:1.54.0-alpha, opentelemetry-sdk-extension-autoconfigure:1.60.1, opentelemetry-sdk-testing:1.60.1, robolectric:4.16.1, tomcat-embed-core:10.1.52, tomcat-embed-core9: 9.0.115,\u003c/li\u003e\n\u003cli\u003eUpgrade Netty to 4.1.132 and netty-tcnative to 2.0.75 (1528f809c)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eThanks to\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/becomeStar\"\u003e\u003ccode\u003e@​becomeStar\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benjaminp\"\u003e\u003ccode\u003e@​benjaminp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JoeCqupt\"\u003e\u003ccode\u003e@​JoeCqupt\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kainsin\"\u003e\u003ccode\u003e@​Kainsin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/merlimat\"\u003e\u003ccode\u003e@​merlimat\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SreeramdasLavanya\"\u003e\u003ccode\u003e@​SreeramdasLavanya\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/themechbro\"\u003e\u003ccode\u003e@​themechbro\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhangweikop\"\u003e\u003ccode\u003e@​zhangweikop\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/6951542f66c59f63cbf5348b38a2306a3964adda\"\u003e\u003ccode\u003e6951542\u003c/code\u003e\u003c/a\u003e Bump version to 1.81.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e94188e81298c36ac9654dc76025940171abc0a4\"\u003e\u003ccode\u003ee94188e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.81.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/4813c6d06089d49a479f7f1786297dc3d8c0e549\"\u003e\u003ccode\u003e4813c6d\u003c/code\u003e\u003c/a\u003e core,xds: Fix backend_service plumbing for subchannel metrics (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12735\"\u003e#12735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/6737eb583a273dd13bf9e7b82cc1d9df75e551bd\"\u003e\u003ccode\u003e6737eb5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Replace javax ThreadSafe annotation with errorprone ThreadSafe (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/1274\"\u003e#1274\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ef3531325ba98fa043f6f7f16fa0715e9296d7a3\"\u003e\u003ccode\u003eef35313\u003c/code\u003e\u003c/a\u003e Replace javax ThreadSafe annotation with errorprone ThreadSafe (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12742\"\u003e#12742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/3ed732fc09c41b185cd03fdd6864c4ebb82f3a80\"\u003e\u003ccode\u003e3ed732f\u003c/code\u003e\u003c/a\u003e examples: Clean up Health, and document need for grpc-services\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/eac9fe9612881d54d51ddc5496599ba9a8201021\"\u003e\u003ccode\u003eeac9fe9\u003c/code\u003e\u003c/a\u003e xds: fix xDS HTTP CONNECT's transport socket name bug (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12740\"\u003e#12740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1528f809c9e506cf2e7052e3f41fd8b75636d3d3\"\u003e\u003ccode\u003e1528f80\u003c/code\u003e\u003c/a\u003e Upgrade Netty to 4.1.132 and netty-tcnative to 2.0.75\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/d057a7ebee2945fc0a9ca58b36afdb5b37a99680\"\u003e\u003ccode\u003ed057a7e\u003c/code\u003e\u003c/a\u003e [xds] Implement A114: WRR support for custom backend metrics (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12645\"\u003e#12645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/842636f88452c30769a5561f7659db6e4f9fc2a0\"\u003e\u003ccode\u003e842636f\u003c/code\u003e\u003c/a\u003e xds: Add configuration objects for ExtAuthz, GrpcService and Bootstrap change...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.80.0...v1.81.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.drewnoakes:metadata-extractor` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/drewnoakes/metadata-extractor/releases\"\u003ecom.drewnoakes:metadata-extractor's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.20.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify string creation by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/637\"\u003edrewnoakes/metadata-extractor#637\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCopy paste error fixed by \u003ca href=\"https://github.com/GRuppert\"\u003e\u003ccode\u003e@​GRuppert\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/641\"\u003edrewnoakes/metadata-extractor#641\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded code to parse OM System II makernote (uses Olympus II makernote) by \u003ca href=\"https://github.com/AndyDragon\"\u003e\u003ccode\u003e@​AndyDragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/642\"\u003edrewnoakes/metadata-extractor#642\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd HEIC/HEIF to README by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/645\"\u003edrewnoakes/metadata-extractor#645\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTrim trailing null bytes from some string values by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/647\"\u003edrewnoakes/metadata-extractor#647\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed parsing of illegal dates + handle known null value by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/650\"\u003edrewnoakes/metadata-extractor#650\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport AVIF / AV1 images by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/649\"\u003edrewnoakes/metadata-extractor#649\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven.yml fixed after branch rename by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/652\"\u003edrewnoakes/metadata-extractor#652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed wrong date/time when timezone is null by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/651\"\u003edrewnoakes/metadata-extractor#651\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate lengths before parsing JPEG data by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/653\"\u003edrewnoakes/metadata-extractor#653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Automatic-Module-Name by \u003ca href=\"https://github.com/tsmock\"\u003e\u003ccode\u003e@​tsmock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/621\"\u003edrewnoakes/metadata-extractor#621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PDF support to detectFileType by \u003ca href=\"https://github.com/max-peroch\"\u003e\u003ccode\u003e@​max-peroch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/665\"\u003edrewnoakes/metadata-extractor#665\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix of \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/issues/676\"\u003e#676\u003c/a\u003e by \u003ca href=\"https://github.com/ogawaffm\"\u003e\u003ccode\u003e@​ogawaffm\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/677\"\u003edrewnoakes/metadata-extractor#677\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIssue \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/issues/685\"\u003e#685\u003c/a\u003e | Fix StringIndexOutOfBoundsException in ICC DESC tag processing by \u003ca href=\"https://github.com/DAN-MU-ZI\"\u003e\u003ccode\u003e@​DAN-MU-ZI\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/687\"\u003edrewnoakes/metadata-extractor#687\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump Java version to 1.8 by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/696\"\u003edrewnoakes/metadata-extractor#696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix rounding error in shutter speed description by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/695\"\u003edrewnoakes/metadata-extractor#695\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend file type detection by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/697\"\u003edrewnoakes/metadata-extractor#697\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIssue \u003ca h...\n\n_Description has been truncated_","html_url":"https://github.com/ricekot/zap-extensions/pull/60","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ricekot%2Fzap-extensions/issues/60","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/60/packages"},{"uuid":"4469368518","node_id":"PR_kwDONuKnIs7cqWDd","number":165,"state":"open","title":"build(deps): bump org.sonarqube from 4.3.0.3225 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-18T13:08:45.000Z","updated_at":"2026-05-18T13:09:16.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"4.3.0.3225","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 4.3.0.3225 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=4.3.0.3225\u0026new-version=7.3.0.8198)](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/baretto-labs/OllamAssist/pull/165","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/baretto-labs%2FOllamAssist/issues/165","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/165/packages"},{"uuid":"4446480523","node_id":"PR_kwDOB_7c0M7bi09Y","number":3530,"state":"closed","title":"chore(deps): bump the java-minor-patch group across 1 directory with 36 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-15T07:55:31.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-14T13:55:45.000Z","updated_at":"2026-05-15T07:55:33.000Z","time_to_close":64786,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"java-minor-patch","update_count":36,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"org.eclipse.jetty:jetty-server","old_version":"12.1.8","new_version":"12.1.9"},{"name":"org.eclipse.jetty:jetty-http","old_version":"12.1.8","new_version":"12.1.9"},{"name":"org.eclipse.jetty:jetty-xml","old_version":"12.1.8","new_version":"12.1.9"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.7","new_version":"4.0.8"},{"name":"org.glassfish.jaxb:jaxb-xjc","old_version":"4.0.7","new_version":"4.0.8"},{"name":"org.springframework:spring-context","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.springframework:spring-web","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.springframework:spring-test","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.springframework:spring-jdbc","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.eclipse.microprofile.config:microprofile-config-api","old_version":"3.1","new_version":"3.1.1","repository_url":"https://github.com/eclipse/microprofile-config"},{"name":"io.smallrye.config:smallrye-config-core","old_version":"3.16.0","new_version":"3.17.2"},{"name":"io.smallrye.config:smallrye-config-source-yaml","old_version":"3.16.0","new_version":"3.17.2"},{"name":"io.github.openfeign:feign-hc5","old_version":"13.11","new_version":"13.12","repository_url":"https://github.com/openfeign/feign"},{"name":"io.github.openfeign:feign-jackson3","old_version":"13.11","new_version":"13.12","repository_url":"https://github.com/openfeign/feign"},{"name":"io.github.openfeign:feign-slf4j","old_version":"13.11","new_version":"13.12","repository_url":"https://github.com/openfeign/feign"},{"name":"com.codeborne:selenide","old_version":"7.15.0","new_version":"7.16.1","repository_url":"https://github.com/selenide/selenide"},{"name":"com.codeborne:selenide-grid","old_version":"7.15.0","new_version":"7.16.1","repository_url":"https://github.com/selenide/selenide"},{"name":"io.qameta.allure:allure-selenide","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure-java"},{"name":"io.qameta.allure:allure-cucumber7-jvm","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure-java"},{"name":"io.qameta.allure:allure-junit-platform","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure-java"},{"name":"io.qameta.allure:allure-commandline","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure2"},{"name":"org.testcontainers:testcontainers","old_version":"2.0.4","new_version":"2.0.5","repository_url":"https://github.com/testcontainers/testcontainers-java"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.1","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.apache.commons:commons-configuration2","old_version":"2.13.0","new_version":"2.14.0"},{"name":"org.apache.httpcomponents.client5:httpclient5","old_version":"5.6","new_version":"5.6.1","repository_url":"https://github.com/apache/httpcomponents-client"},{"name":"commons-codec:commons-codec","old_version":"1.21.0","new_version":"1.22.0","repository_url":"https://github.com/apache/commons-codec"},{"name":"commons-io:commons-io","old_version":"2.21.0","new_version":"2.22.0"},{"name":"io.swagger.parser.v3:swagger-parser","old_version":"2.1.39","new_version":"2.1.41","repository_url":"https://github.com/swagger-api/swagger-parser"},{"name":"io.swagger.parser.v3:swagger-parser-v3","old_version":"2.1.39","new_version":"2.1.41"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"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":"io.swagger.core.v3:swagger-annotations","old_version":"2.2.45","new_version":"2.2.49"},{"name":"com.sun.xml.messaging.saaj:saaj-impl","old_version":"3.0.4","new_version":"3.0.5"},{"name":"org.openapi.generator","old_version":"7.21.0","new_version":"7.22.0"},{"name":"org.sonarqube","old_version":"7.2.2.6593","new_version":"7.3.0.8198"}],"path":null,"ecosystem":"maven"},"body":"Bumps the java-minor-patch group with 36 updates in the /src directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n| org.eclipse.jetty:jetty-server | `12.1.8` | `12.1.9` |\n| org.eclipse.jetty:jetty-http | `12.1.8` | `12.1.9` |\n| org.eclipse.jetty:jetty-xml | `12.1.8` | `12.1.9` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.7` | `4.0.8` |\n| org.glassfish.jaxb:jaxb-xjc | `4.0.7` | `4.0.8` |\n| [org.springframework:spring-context](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.springframework:spring-web](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.springframework:spring-test](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.springframework:spring-jdbc](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.eclipse.microprofile.config:microprofile-config-api](https://github.com/eclipse/microprofile-config) | `3.1` | `3.1.1` |\n| io.smallrye.config:smallrye-config-core | `3.16.0` | `3.17.2` |\n| io.smallrye.config:smallrye-config-source-yaml | `3.16.0` | `3.17.2` |\n| [io.github.openfeign:feign-hc5](https://github.com/openfeign/feign) | `13.11` | `13.12` |\n| [io.github.openfeign:feign-jackson3](https://github.com/openfeign/feign) | `13.11` | `13.12` |\n| [io.github.openfeign:feign-slf4j](https://github.com/openfeign/feign) | `13.11` | `13.12` |\n| [com.codeborne:selenide](https://github.com/selenide/selenide) | `7.15.0` | `7.16.1` |\n| [com.codeborne:selenide-grid](https://github.com/selenide/selenide) | `7.15.0` | `7.16.1` |\n| [io.qameta.allure:allure-selenide](https://github.com/allure-framework/allure-java) | `2.33.0` | `2.34.0` |\n| [io.qameta.allure:allure-cucumber7-jvm](https://github.com/allure-framework/allure-java) | `2.33.0` | `2.34.0` |\n| [io.qameta.allure:allure-junit-platform](https://github.com/allure-framework/allure-java) | `2.33.0` | `2.34.0` |\n| [io.qameta.allure:allure-commandline](https://github.com/allure-framework/allure2) | `2.33.0` | `2.34.0` |\n| [org.testcontainers:testcontainers](https://github.com/testcontainers/testcontainers-java) | `2.0.4` | `2.0.5` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.1` | `3.1.3` |\n| org.apache.commons:commons-configuration2 | `2.13.0` | `2.14.0` |\n| [org.apache.httpcomponents.client5:httpclient5](https://github.com/apache/httpcomponents-client) | `5.6` | `5.6.1` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.21.0` | `1.22.0` |\n| commons-io:commons-io | `2.21.0` | `2.22.0` |\n| [io.swagger.parser.v3:swagger-parser](https://github.com/swagger-api/swagger-parser) | `2.1.39` | `2.1.41` |\n| io.swagger.parser.v3:swagger-parser-v3 | `2.1.39` | `2.1.41` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.5.0-jre` | `33.6.0-jre` |\n| io.swagger.core.v3:swagger-annotations | `2.2.45` | `2.2.49` |\n| com.sun.xml.messaging.saaj:saaj-impl | `3.0.4` | `3.0.5` |\n| org.openapi.generator | `7.21.0` | `7.22.0` |\n| org.sonarqube | `7.2.2.6593` | `7.3.0.8198` |\n\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\nUpdates `org.eclipse.jetty:jetty-server` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-http` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-xml` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-http` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-xml` from 12.1.8 to 12.1.9\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.7 to 4.0.8\n\nUpdates `org.glassfish.jaxb:jaxb-xjc` from 4.0.7 to 4.0.8\n\nUpdates `org.glassfish.jaxb:jaxb-xjc` from 4.0.7 to 4.0.8\n\nUpdates `org.springframework:spring-context` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-context's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-web` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-web's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-test` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-jdbc` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-web` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-web's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-test` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.gith...\n\n_Description has been truncated_","html_url":"https://github.com/nordic-institute/X-Road/pull/3530","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nordic-institute%2FX-Road/issues/3530","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3530/packages"},{"uuid":"4424534908","node_id":"PR_kwDORXH8Es7acBTF","number":54,"state":"open","title":"build(deps): bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T21:48:58.000Z","updated_at":"2026-05-11T21:49:30.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/RajibAlam43/e-learning/pull/54","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RajibAlam43%2Fe-learning/issues/54","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/54/packages"},{"uuid":"4417265113","node_id":"PR_kwDOGbiom87aEXWn","number":156,"state":"open","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":["yvasyliev"],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T00:23:44.000Z","updated_at":"2026-05-11T00:26:07.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/yvasyliev/dz4j/pull/156","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yvasyliev%2Fdz4j/issues/156","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/156/packages"},{"uuid":"4402074714","node_id":"PR_kwDOEaQNRs7ZT7wv","number":580,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198 in the gradle group","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-08T21:13:00.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-07T21:16:05.000Z","updated_at":"2026-05-08T21:13:02.000Z","time_to_close":86215,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":"the gradle group","ecosystem":"maven"},"body":"Bumps the gradle group with 1 update: org.sonarqube.\n\nUpdates `org.sonarqube` from 7.2.3.7755 to 7.3.0.8198\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/navikt/omsorgspenger-sak/pull/580","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/navikt%2Fomsorgspenger-sak/issues/580","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/580/packages"},{"uuid":"4380595839","node_id":"PR_kwDOMC95A87YNyhw","number":89,"state":"closed","title":"build(deps): bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-05T00:25:13.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-05T00:25:00.000Z","updated_at":"2026-05-05T00:27:29.000Z","time_to_close":13,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/tacascer-org/hanab-infer/pull/89","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/tacascer-org%2Fhanab-infer/issues/89","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/89/packages"},{"uuid":"4380259807","node_id":"PR_kwDOGLWB1s7YMrqG","number":375,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-04T23:07:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T23:05:52.000Z","updated_at":"2026-05-04T23:08:05.000Z","time_to_close":125,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/josephrodriguez/springboot-starterkit/pull/375","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/josephrodriguez%2Fspringboot-starterkit/issues/375","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/375/packages"},{"uuid":"4379409600","node_id":"PR_kwDOSTvtzc7YJ3eb","number":11,"state":"open","title":"build(deps): bump org.sonarqube from 6.0.1.5171 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-04T20:21:42.000Z","updated_at":"2026-05-05T21:58:32.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"6.0.1.5171","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 6.0.1.5171 to 7.3.0.8198.\n","html_url":"https://github.com/georgeci/MoneySurfer/pull/11","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/georgeci%2FMoneySurfer/issues/11","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/11/packages"},{"uuid":"4374356822","node_id":"PR_kwDOCzfvNs7X5KKt","number":790,"state":"closed","title":"Bump org.sonarqube from 6.3.1.5724 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java","develop"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-08T05:43:10.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T06:09:01.000Z","updated_at":"2026-06-08T05:43:12.000Z","time_to_close":3022449,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"6.3.1.5724","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 6.3.1.5724 to 7.3.0.8198.\n","html_url":"https://github.com/adaptris/interlok-artemis/pull/790","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptris%2Finterlok-artemis/issues/790","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/790/packages"},{"uuid":"4374265827","node_id":"PR_kwDOOO44CM7X43I-","number":168,"state":"closed","title":"Bump the minor-and-patch group across 1 directory with 35 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T05:55:07.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T05:47:09.000Z","updated_at":"2026-05-11T05:55:09.000Z","time_to_close":605278,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-and-patch","update_count":35,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"io.ktor:ktor-server-core","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-rate-limit","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":"io.ktor:ktor-server-content-negotiation","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-metrics","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-call-logging","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-compression","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-openapi","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-swagger","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-auth","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-auth-jwt","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-netty","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-cio","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-client-auth","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-metrics-micrometer","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-mock","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-config-yaml","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-test-host","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor.plugin","old_version":"3.4.2","new_version":"3.4.3"},{"name":"org.postgresql:postgresql","old_version":"42.7.10","new_version":"42.7.11","repository_url":"https://github.com/pgjdbc/pgjdbc"},{"name":"io.micrometer:micrometer-registry-prometheus","old_version":"1.16.4","new_version":"1.16.5","repository_url":"https://github.com/micrometer-metrics/micrometer"},{"name":"io.micrometer:micrometer-core","old_version":"1.16.4","new_version":"1.16.5","repository_url":"https://github.com/micrometer-metrics/micrometer"},{"name":"org.jetbrains.kotlin:kotlin-test-junit","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.flywaydb:flyway-core","old_version":"12.3.0","new_version":"12.5.0"},{"name":"org.flywaydb:flyway-database-postgresql","old_version":"12.3.0","new_version":"12.5.0"},{"name":"no.nav.security:token-validation-ktor-v3","old_version":"6.0.4","new_version":"6.0.6","repository_url":"https://github.com/navikt/token-support"},{"name":"com.google.cloud:google-cloud-bigquery","old_version":"2.62.0","new_version":"2.65.0","repository_url":"https://github.com/googleapis/google-cloud-java"},{"name":"com.google.cloud:libraries-bom","old_version":"26.79.0","new_version":"26.80.0","repository_url":"https://github.com/googleapis/java-cloud-bom"},{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"}],"path":null,"ecosystem":"maven"},"body":"Bumps the minor-and-patch group with 35 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n| [io.ktor:ktor-server-core](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-rate-limit](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| [io.ktor:ktor-server-content-negotiation](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-metrics](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-call-logging](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-compression](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-openapi](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-swagger](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-auth](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-auth-jwt](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-netty](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-cio](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-client-auth](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-metrics-micrometer](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-mock](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-config-yaml](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-test-host](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| io.ktor.plugin | `3.4.2` | `3.4.3` |\n| [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) | `42.7.10` | `42.7.11` |\n| [io.micrometer:micrometer-registry-prometheus](https://github.com/micrometer-metrics/micrometer) | `1.16.4` | `1.16.5` |\n| [io.micrometer:micrometer-core](https://github.com/micrometer-metrics/micrometer) | `1.16.4` | `1.16.5` |\n| [org.jetbrains.kotlin:kotlin-test-junit](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| org.flywaydb:flyway-core | `12.3.0` | `12.5.0` |\n| org.flywaydb:flyway-database-postgresql | `12.3.0` | `12.5.0` |\n| [no.nav.security:token-validation-ktor-v3](https://github.com/navikt/token-support) | `6.0.4` | `6.0.6` |\n| [com.google.cloud:google-cloud-bigquery](https://github.com/googleapis/google-cloud-java) | `2.62.0` | `2.65.0` |\n| [com.google.cloud:libraries-bom](https://github.com/googleapis/java-cloud-bom) | `26.79.0` | `26.80.0` |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n\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\nUpdates `io.ktor:ktor-server-core` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-rate-limit` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-rate-limit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-rate-limit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-serialization-kotlinx-json` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-serialization-kotlinx-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-serialization-kotlinx-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-content-negotiation` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-content-negotiation's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-content-negotiation's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-metrics` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-metrics's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-metrics's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-call-logging` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-call-logging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-call-logging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-compression` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-compression's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-compression's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-openapi` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-openapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-openapi's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-swagger` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-swagger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTO...\n\n_Description has been truncated_","html_url":"https://github.com/navikt/ao-oppfolgingskontor/pull/168","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/navikt%2Fao-oppfolgingskontor/issues/168","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/168/packages"},{"uuid":"4374241225","node_id":"PR_kwDOKTB41M7X4yA_","number":153,"state":"open","title":"Bump the minor-patch group across 1 directory with 10 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-04T05:39:49.000Z","updated_at":"2026-05-04T05:43:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-patch","update_count":10,"packages":[{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"com.microsoft.azure:msal4j","old_version":"1.24.0","new_version":"1.24.1","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-java"},{"name":"org.jetbrains.kotlin:kotlin-reflect","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.kapt","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.spring","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"io.github.oshai:kotlin-logging-jvm","old_version":"8.0.01","new_version":"8.0.02","repository_url":"https://github.com/oshai/kotlin-logging"},{"name":"org.springframework.boot:spring-boot-dependencies","old_version":"4.0.5","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"},{"name":"com.diffplug.spotless","old_version":"8.3.0","new_version":"8.4.0"}],"path":null,"ecosystem":"maven"},"body":"Bumps the minor-patch group with 10 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.0` |\n| [com.microsoft.azure:msal4j](https://github.com/AzureAD/microsoft-authentication-library-for-java) | `1.24.0` | `1.24.1` |\n| [org.jetbrains.kotlin:kotlin-reflect](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.kapt](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.plugin.spring](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [io.github.oshai:kotlin-logging-jvm](https://github.com/oshai/kotlin-logging) | `8.0.01` | `8.0.02` |\n| [org.springframework.boot:spring-boot-dependencies](https://github.com/spring-projects/spring-boot) | `4.0.5` | `4.0.6` |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n| com.diffplug.spotless | `8.3.0` | `8.4.0` |\n\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\nUpdates `com.microsoft.azure:msal4j` from 1.24.0 to 1.24.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/releases\"\u003ecom.microsoft.azure:msal4j's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.24.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove sovereign cloud support and network error handling by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1018\"\u003eAzureAD/microsoft-authentication-library-for-java#1018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove integration tests to a more standard directory path by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1017\"\u003eAzureAD/microsoft-authentication-library-for-java#1017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for code scanning alert no. 18: Implicit narrowing conversion in compound assignment by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1013\"\u003eAzureAD/microsoft-authentication-library-for-java#1013\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.azure:azure-identity from 1.10.0 to 1.12.2 in /msal4j-sdk in the maven group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1006\"\u003eAzureAD/microsoft-authentication-library-for-java#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/compare/v1.24.0...v1.24.1\"\u003ehttps://github.com/AzureAD/microsoft-authentication-library-for-java/compare/v1.24.0...v1.24.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/blob/dev/changelog.txt\"\u003ecom.microsoft.azure:msal4j's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion 1.24.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eImprove sovereign cloud support and network error handling (\u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1018\"\u003e#1018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInternal test restructuring (\u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1017\"\u003e#1017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate minor dependencies (\u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1006\"\u003e#1006\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1013\"\u003e#1013\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/AzureAD/microsoft-authentication-library-for-java/commit/932b4daa8861fcb50c122ea45e76d551227997f0\"\u003e\u003ccode\u003e932b4da\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1022\"\u003e#1022\u003c/a\u003e from AzureAD/avdunn/release-1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/16e5435d4c0226891db9b7c494a32f8c30957088\"\u003e\u003ccode\u003e16e5435\u003c/code\u003e\u003c/a\u003e Disable tests failing for server-side reasons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/e36facde8c5d635b34de2df69798f38870a2130c\"\u003e\u003ccode\u003ee36facd\u003c/code\u003e\u003c/a\u003e Version updates for 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/eb4d2d4f6ab2103f324a04e68de30578c59c72e7\"\u003e\u003ccode\u003eeb4d2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1013\"\u003e#1013\u003c/a\u003e from AzureAD/alert-autofix-18\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/c4753124d22eda14cd20245fc67dd02a40d1da9c\"\u003e\u003ccode\u003ec475312\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1018\"\u003e#1018\u003c/a\u003e from AzureAD/avdunn/instance-discovery-improvement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/01120559f5d279f57605a0b5997a1f0e6c9507cd\"\u003e\u003ccode\u003e0112055\u003c/code\u003e\u003c/a\u003e Small improvements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/30a78048d2b367183df6b9a57c2ec7901cf8ea4f\"\u003e\u003ccode\u003e30a7804\u003c/code\u003e\u003c/a\u003e Remove unnecessary tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/966c52afc17bcdd4f638aa259b534529efe7ed7d\"\u003e\u003ccode\u003e966c52a\u003c/code\u003e\u003c/a\u003e Address feedback and improve consistency with .NET\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/e8a601af7922a4990b7f99703a52ec599faabd1a\"\u003e\u003ccode\u003ee8a601a\u003c/code\u003e\u003c/a\u003e Improve sovereign cloud support and network error handling\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/3ba5a85b74c53123b096fa09142488f7ddc81e35\"\u003e\u003ccode\u003e3ba5a85\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1017\"\u003e#1017\u003c/a\u003e from AzureAD/avdunn/reorganize-test-directory\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/compare/v1.24.0...v1.24.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin:kotlin-reflect` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin:kotlin-reflect's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin:kotlin-reflect's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.jvm` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.jvm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.kapt` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.kapt's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.kapt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.spring` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.spring's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.spring's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.github.oshai:kotlin-logging-jvm` from 8.0.01 to 8.0.02\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oshai/kotlin-logging/releases\"\u003eio.github.oshai:kotlin-logging-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.0.02\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix GraalVM native build error caused by stale substitution target in v8.x by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oshai/kotlin-logging/pull/601\"\u003eoshai/kotlin-logging#601\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/oshai/kotlin-logging/compare/8.0.01...8.0.02\"\u003ehttps://github.com/oshai/kotlin-logging/compare/8.0.01...8.0.02\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/oshai/kotlin-logging/commit/accd3ca8cbedefb818f6064ed526fb00a0141064\"\u003e\u003ccode\u003eaccd3ca\u003c/code\u003e\u003c/a\u003e bump version to 8.0.03\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oshai/kotlin-logging/commit/2bd058ada40799b7e3953b9f7d4a7112a4860fd2\"\u003e\u003ccode\u003e2bd058a\u003c/code\u003e\u003c/a\u003e bump version to 8.0.02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oshai/kotlin-logging/commit/8ab1a8a49d879b06272e088472981e57f56428d6\"\u003e\u003ccode\u003e8ab1a8a\u003c/code\u003e\u003c/a\u003e Fix GraalVM native build error caused by stale substitution target in v8.x (#...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/oshai/kotlin-logging/compare/8.0.01...8.0.02\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot:spring-boot-dependencies` 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:spring-boot-dependencies'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...\n\n_Description has been truncated_","html_url":"https://github.com/OSGP/gxf-java-utilities/pull/153","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/OSGP%2Fgxf-java-utilities/issues/153","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/153/packages"},{"uuid":"4373602505","node_id":"PR_kwDOKQhBbs7X2v6J","number":163,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-04T01:57:17.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T01:54:25.000Z","updated_at":"2026-05-04T01:57:18.000Z","time_to_close":172,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/mkutz/untangle-your-spaghetti-test-code/pull/163","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkutz%2Funtangle-your-spaghetti-test-code/issues/163","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/163/packages"},{"uuid":"4363150180","node_id":"PR_kwDOBZpuic7XW03s","number":195,"state":"open","title":"Bump the all group with 8 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-01T06:22:51.000Z","updated_at":"2026-05-01T06:24:19.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"all","update_count":8,"packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"jaxen:jaxen","old_version":"2.0.0","new_version":"2.0.1","repository_url":"https://github.com/jaxen-xpath/jaxen"},{"name":"com.google.code.gson:gson","old_version":"2.13.2","new_version":"2.14.0","repository_url":"https://github.com/google/gson"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"org.jetbrains.kotlin:kotlin-gradle-plugin","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"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"}],"path":null,"ecosystem":"maven"},"body":"Bumps the all group with 8 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [jaxen:jaxen](https://github.com/jaxen-xpath/jaxen) | `2.0.0` | `2.0.1` |\n| [com.google.code.gson:gson](https://github.com/google/gson) | `2.13.2` | `2.14.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n| [org.jetbrains.kotlin:kotlin-gradle-plugin](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n\nUpdates `org.sonarqube` from 7.2.3.7755 to 7.3.0.8198\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `jaxen:jaxen` from 2.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases\"\u003ejaxen:jaxen's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe build is now fully byte-per-byte reproducible. If you use the same JDK on the same platform to compile, you'll get the same bytes out every time. This is a prerequisite for hash-based defenses against supply chain and MITM attacks.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe release has been mostly automated. It's not quite a one-click deploy but it's close.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSeveral bugs in XPath conformance detected by Claude Sonnet 4.6 were fixed:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003eround()\u003c/code\u003e function returns negative zero for values between -0.5 and -0.0.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003enumber()\u003c/code\u003e function rejects some strings Java recognizes as a number but XPath does not.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanyMatchingNode()\u003c/code\u003e and \u003ccode\u003eevaluateAsBoolean()\u003c/code\u003e no longer throw \u003ccode\u003eNoSuchElementException\u003c/code\u003e when evaluating an XPath expression with multiple predicates and more nodes than predicates.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultCommentNodeStep.getText()\u003c/code\u003e includes predicates. (This one's very unlikely to have any effect on XPath queries or evaluation.)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe DOMNavigator can now search inside entity reference and document fragment nodes.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epunctuation and whitespace by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/157\"\u003ejaxen-xpath/jaxen#157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove duplicated condition from PatternParser convertStep by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/159\"\u003ejaxen-xpath/jaxen#159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParameterize translate function.evaluate by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/161\"\u003ejaxen-xpath/jaxen#161\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate compiler plugin to 3.10.1 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/165\"\u003ejaxen-xpath/jaxen#165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003euse StringBuilder instead of StringBuffer by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/160\"\u003ejaxen-xpath/jaxen#160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSimplify assertions by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/162\"\u003ejaxen-xpath/jaxen#162\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-project-info-reports-plugin 3.4.2 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/166\"\u003ejaxen-xpath/jaxen#166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-javadoc-plugin 3.5.0 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/167\"\u003ejaxen-xpath/jaxen#167\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeprecate own implementation of SingletonList by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/169\"\u003ejaxen-xpath/jaxen#169\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-source-plugin 3.2.1 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/171\"\u003ejaxen-xpath/jaxen#171\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eclarify a few comments by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/175\"\u003ejaxen-xpath/jaxen#175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-compiler-plugin 3.11.0 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/176\"\u003ejaxen-xpath/jaxen#176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate source and assembly plugins by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/177\"\u003ejaxen-xpath/jaxen#177\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebetter test code namespaces by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/178\"\u003ejaxen-xpath/jaxen#178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003equiet javadoc by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/179\"\u003ejaxen-xpath/jaxen#179\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove defunct mailing list archives by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/183\"\u003ejaxen-xpath/jaxen#183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate build plugins by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/184\"\u003ejaxen-xpath/jaxen#184\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMore plugin updates by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/185\"\u003ejaxen-xpath/jaxen#185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate Maven plugins by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/187\"\u003ejaxen-xpath/jaxen#187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove maxPermSize by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/189\"\u003ejaxen-xpath/jaxen#189\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd devcontainer by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/192\"\u003ejaxen-xpath/jaxen#192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodespaces by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/193\"\u003ejaxen-xpath/jaxen#193\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003euse more defaults by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/194\"\u003ejaxen-xpath/jaxen#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse https in pom.xml by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/196\"\u003ejaxen-xpath/jaxen#196\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate Java 1.3 javadoc references to current project requirements by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/200\"\u003ejaxen-xpath/jaxen#200\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd explicit versions for Maven core lifecycle plugins by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/198\"\u003ejaxen-xpath/jaxen#198\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd comprehensive GitHub Copilot instructions for Jaxen development workflow by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/202\"\u003ejaxen-xpath/jaxen#202\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix all javadoc to conform to Oracle Javadoc guidelines by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/206\"\u003ejaxen-xpath/jaxen#206\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement comprehensive API compatibility checking with Animal Sniffer and Japicmp plugins by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/204\"\u003ejaxen-xpath/jaxen#204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd SECURITY.md file with security reporting instructions by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/208\"\u003ejaxen-xpath/jaxen#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Maven wrapper to project by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/210\"\u003ejaxen-xpath/jaxen#210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove optimize flag by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/215\"\u003ejaxen-xpath/jaxen#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove \u003ca href=\"https://github.com/see\"\u003e\u003ccode\u003e@​see\u003c/code\u003e\u003c/a\u003e references to Javadoc-excluded packages by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/218\"\u003ejaxen-xpath/jaxen#218\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Actions CI for Java 8 by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/220\"\u003ejaxen-xpath/jaxen#220\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e2.0 no longer beta by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/222\"\u003ejaxen-xpath/jaxen#222\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace CircleCI with GitHub Actions CI (Java 8) by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/221\"\u003ejaxen-xpath/jaxen#221\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/jaxen-xpath/jaxen/commit/21b6f5f4a85c61964e79eabadbf32451fa2a14ec\"\u003e\u003ccode\u003e21b6f5f\u003c/code\u003e\u003c/a\u003e Release 2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/861b412b552dd397ea086fe28246ed33ccff6d0e\"\u003e\u003ccode\u003e861b412\u003c/code\u003e\u003c/a\u003e docs: fix GitHub fine-grained PAT setup instructions to match current UI (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/307\"\u003e#307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/c0fb3052e46cdfa8e1bfa64f0d39ddbbc8984441\"\u003e\u003ccode\u003ec0fb305\u003c/code\u003e\u003c/a\u003e Move GPG private key export step to point of use in RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/305\"\u003e#305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/b57f131ccc66efd95318bb1da7cb8ed044de47e8\"\u003e\u003ccode\u003eb57f131\u003c/code\u003e\u003c/a\u003e doc: add GitHub PAT creation instructions to RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/304\"\u003e#304\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/1cc4f79f81a86d6d10b1e6bcddf10f873f0fc7d2\"\u003e\u003ccode\u003e1cc4f79\u003c/code\u003e\u003c/a\u003e docs: clarify release secrets are repository-scoped (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/302\"\u003e#302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/efbe4bfb1fb082d20c1d3d0833df0bfa94267064\"\u003e\u003ccode\u003eefbe4bf\u003c/code\u003e\u003c/a\u003e Change CI/CD integration from CircleCI to GitHub Actions (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/301\"\u003e#301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/becec3a6f8ae76f20189e6c298b5c3902577abcd\"\u003e\u003ccode\u003ebecec3a\u003c/code\u003e\u003c/a\u003e Add hyperlinks to GitHub pages referenced in RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/298\"\u003e#298\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/b54daecb3712c34e2cbf80dfe0d2df9c11e86131\"\u003e\u003ccode\u003eb54daec\u003c/code\u003e\u003c/a\u003e Migrate release process from OSSRH to Central Publishing Portal (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/295\"\u003e#295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/6800fd2294c872aed2039d2f8fd6b253e3c028c3\"\u003e\u003ccode\u003e6800fd2\u003c/code\u003e\u003c/a\u003e Clarify GPG key creation instructions in RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/291\"\u003e#291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/6731f5712f67ada1948e9a9eb82d58e16fdb43eb\"\u003e\u003ccode\u003e6731f57\u003c/code\u003e\u003c/a\u003e Update Maven distribution URL to version 3.9.15 (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/289\"\u003e#289\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jaxen-xpath/jaxen/compare/v2.0.0...v2.0.1\"\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\u003eImpl\u003c/code\u003e) in \u003ccode\u003ejava.lang.reflect\u003c/code\u003e. For some reason, they were serializable, even though the \u003ccode\u003ejava.lang.reflect\u003c/code\u003e implementations are not. Having unnecessarily serializable classes could \u003cem\u003econceivably\u003c/em\u003e have been a security problem if they were part of a larger exploit using serialization. (We do not consider this a likely scenario and do not suggest that you need to update Gson just to get this change.)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eLegacyProtoTypeAdapterFactory\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/3014\"\u003egoogle/gson#3014\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is not part of any released artifact, but may be of use when trying to fix code that is currently accessing the internals of protobuf classes via reflection.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMake AppendableWriter do flush and close if delegation object supports by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2925\"\u003egoogle/gson#2925\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther less visible changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd default capacity to EnumTypeAdapter maps by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2959\"\u003egoogle/gson#2959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: move derived adapters from Gson to TypeAdapters by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2951\"\u003egoogle/gson#2951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003enew Gson()\u003c/code\u003e by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2864\"\u003egoogle/gson#2864\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/ThirdGoddess\"\u003e\u003ccode\u003e@​ThirdGoddess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/2944\"\u003egoogle/gson#2944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lmj798\"\u003e\u003ccode\u003e@​lmj798\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/2988\"\u003egoogle/gson#2988\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Eng-YasminKotb\"\u003e\u003ccode\u003e@​Eng-YasminKotb\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/3005\"\u003egoogle/gson#3005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/andrewstellman\"\u003e\u003ccode\u003e@​andrewstellman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/3006\"\u003egoogle/gson#3006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/google/gson/compare/gson-parent-2.13.2...gson-parent-2.14.0\"\u003ehttps://github.com/google/gson/compare/gson-parent-2.13.2...gson-parent-2.14.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/3ff35d6269894901ab8006258395aafc4b9765cd\"\u003e\u003ccode\u003e3ff35d6\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release gson-parent-2.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/a3024fde2a5c12b9a9a0b6b914ae4899aa574d81\"\u003e\u003ccode\u003ea3024fd\u003c/code\u003e\u003c/a\u003e Bump the maven group with 13 updates (\u003ca href=\"https://redirect.github.com/google/gson/issues/3002\"\u003e#3002\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/5689ffe44952ca6ed44c595886b9043286311b23\"\u003e\u003ccode\u003e5689ffe\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 3 updates (\u003ca href=\"https://redirect.github.com/google/gson/issues/3018\"\u003e#3018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/48db33cbf93af6b2f5b117dfdfd826de47f7229c\"\u003e\u003ccode\u003e48db33c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eLegacyProtoTypeAdapterFactory\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/google/gson/issues/3014\"\u003e#3014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/53d703ee76ca3e951fa4a727307c1f28dbcaf3aa\"\u003e\u003ccode\u003e53d703e\u003c/code\u003e\u003c/a\u003e Update outdated comment regarding serializable types (\u003ca href=\"https://redirect.github.com/google/gson/issues/3012\"\u003e#3012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/0189b727761f31596d1a27b7c60b42478dc9f331\"\u003e\u003ccode\u003e0189b72\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003eSerializable\u003c/code\u003e from internal \u003ccode\u003eType\u003c/code\u003e implementation classes. (\u003ca href=\"https://redirect.github.com/google/gson/issues/3011\"\u003e#3011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/f4d371d29c04066dbe7fdb31f642831f9c7f40cd\"\u003e\u003ccode\u003ef4d371d\u003c/code\u003e\u003c/a\u003e Fix duplicate key detection when first value is null (\u003ca href=\"https://redirect.github.com/google/gson/issues/3006\"\u003e#3006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/27d9ba1eeeeb156540cf5397504a4f9f256e911f\"\u003e\u003ccode\u003e27d9ba1\u003c/code\u003e\u003c/a\u003e Fix typo in README (JPMS dependencies section) (\u003ca href=\"https://redirect.github.com/google/gson/issues/3005\"\u003e#3005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/1fa9b7a0a994b006b3be00e2df9de778e71e6807\"\u003e\u003ccode\u003e1fa9b7a\u003c/code\u003e\u003c/a\u003e Validate that strings being parsed as integers consist of ASCII characters (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/b7d59549188867deb42e46073fb38735a5beda1c\"\u003e\u003ccode\u003eb7d5954\u003c/code\u003e\u003c/a\u003e Add iterator fail-fast tests for LinkedTreeMap.clear() (\u003ca href=\"https://redirect.github.com/google/gson/issues/2992\"\u003e#2992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/google/gson/compare/gson-parent-2.13.2...gson-parent-2.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\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\nUpdates `org.jetbrains.kotlin:kotlin-gradle-plugin` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin:kotlin-gradle-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin:kotlin-gradle-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/VerifAPS/verifaps-lib/pull/195","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/VerifAPS%2Fverifaps-lib/issues/195","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/195/packages"}],"issue_packages":[{"old_version":"7.2.3.7755","new_version":"7.3.1.8318","update_type":"minor","path":null,"pr_created_at":"2026-08-07T05:38:22.000Z","version_change":"7.2.3.7755 → 7.3.1.8318","issue":{"uuid":"5087230859","node_id":"PR_kwDOTwMznM774uB9","number":5,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.1.8318","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-08-07T17:13:20.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-07T05:38:22.000Z","updated_at":"2026-08-07T17:13:29.000Z","time_to_close":41698,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.1.8318)](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/sayedalve/PDF-Elite/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayedalve%2FPDF-Elite/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"}},{"old_version":"7.3.0.8198","new_version":"7.3.1.8318","update_type":"patch","path":null,"pr_created_at":"2026-06-11T00:04:56.000Z","version_change":"7.3.0.8198 → 7.3.1.8318","issue":{"uuid":"4635988207","node_id":"PR_kwDOKyk85s7lF9T9","number":2335,"state":"closed","title":"chore(deps): bump the all-backend-non-major-dependencies group across 1 directory with 13 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-12T00:04:23.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-11T00:04:56.000Z","updated_at":"2026-06-12T00:04:25.000Z","time_to_close":86367,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"all-backend-non-major-dependencies","update_count":13,"packages":[{"name":"software.amazon.awssdk:bom","old_version":"2.44.6","new_version":"2.46.5"},{"name":"com.google.protobuf:protobuf-java","old_version":"4.34.1","new_version":"4.35.0","repository_url":"https://github.com/protocolbuffers/protobuf"},{"name":"org.jobrunr:jobrunr-spring-boot-3-starter","old_version":"8.6.0","new_version":"8.6.1","repository_url":"https://github.com/jobrunr/jobrunr"},{"name":"com.uber.nullaway:nullaway","old_version":"0.13.4","new_version":"0.13.6","repository_url":"https://github.com/uber/NullAway"},{"name":"org.apache.tika:tika-core","old_version":"3.3.0","new_version":"3.3.1","repository_url":"https://github.com/apache/tika"},{"name":"io.netty:netty-codec-http","old_version":"4.2.13.Final","new_version":"4.2.15.Final","repository_url":"https://github.com/netty/netty"},{"name":"com.fasterxml.jackson.core:jackson-core","old_version":"2.21.3","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson-core"},{"name":"com.github.jk1.dependency-license-report","old_version":"3.1.2","new_version":"3.1.3"},{"name":"io.sentry.jvm.gradle","old_version":"6.6.0","new_version":"6.10.0","repository_url":"https://github.com/getsentry/sentry-android-gradle-plugin"},{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318"},{"name":"com.diffplug.spotless","old_version":"8.4.0","new_version":"8.6.0"}],"path":null,"ecosystem":"maven"},"body":"Bumps the all-backend-non-major-dependencies group with 11 updates in the /backend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| software.amazon.awssdk:bom | `2.44.6` | `2.46.5` |\n| [com.google.protobuf:protobuf-java](https://github.com/protocolbuffers/protobuf) | `4.34.1` | `4.35.0` |\n| [org.jobrunr:jobrunr-spring-boot-3-starter](https://github.com/jobrunr/jobrunr) | `8.6.0` | `8.6.1` |\n| [com.uber.nullaway:nullaway](https://github.com/uber/NullAway) | `0.13.4` | `0.13.6` |\n| [org.apache.tika:tika-core](https://github.com/apache/tika) | `3.3.0` | `3.3.1` |\n| [io.netty:netty-codec-http](https://github.com/netty/netty) | `4.2.13.Final` | `4.2.15.Final` |\n| [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) | `2.21.3` | `2.22.0` |\n| com.github.jk1.dependency-license-report | `3.1.2` | `3.1.3` |\n| [io.sentry.jvm.gradle](https://github.com/getsentry/sentry-android-gradle-plugin) | `6.6.0` | `6.10.0` |\n| org.sonarqube | `7.3.0.8198` | `7.3.1.8318` |\n| com.diffplug.spotless | `8.4.0` | `8.6.0` |\n\n\nUpdates `software.amazon.awssdk:bom` from 2.44.6 to 2.46.5\n\nUpdates `com.google.protobuf:protobuf-java` from 4.34.1 to 4.35.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/protocolbuffers/protobuf/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jobrunr:jobrunr-spring-boot-3-starter` from 8.6.0 to 8.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jobrunr/jobrunr/releases\"\u003eorg.jobrunr:jobrunr-spring-boot-3-starter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.6.1\u003c/h2\u003e\n\u003ch1\u003eJobRunr and JobRunr Pro 8.6.1\u003c/h1\u003e\n\u003cp\u003eThis patch release includes bug fixes and small improvements for both JobRunr and JobRunr Pro.\u003c/p\u003e\n\u003ch2\u003eJobRunr 8.6.1\u003c/h2\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix multiple master nodes [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1557\"\u003e#1557\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1557\"\u003ejobrunr/jobrunr#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLog dataVersion mismatch exceptions [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1555\"\u003e#1555\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1555\"\u003ejobrunr/jobrunr#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix thread pool corePoolSize setting [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1559\"\u003e#1559\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1559\"\u003ejobrunr/jobrunr#1559\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable JobScheduler and JobRequestScheduler by default for Micronaut [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1556\"\u003e#1556\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1556\"\u003ejobrunr/jobrunr#1556\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\"\u003ehttps://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eJobRunr Pro 8.6.1\u003c/h2\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix multiple master nodes [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1557\"\u003e#1557\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1557\"\u003ejobrunr/jobrunr#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLog dataVersion mismatch exceptions [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1555\"\u003e#1555\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1555\"\u003ejobrunr/jobrunr#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix thread pool corePoolSize setting [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1559\"\u003e#1559\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1559\"\u003ejobrunr/jobrunr#1559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JobFilters from logging when annotation class is missing [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/886\"\u003e#886\u003c/a\u003e](\u003ca href=\"https://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/886\"\u003ehttps://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoNotRetryPolicy trying to retry [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/884\"\u003e#884\u003c/a\u003e](\u003ca href=\"https://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/884\"\u003ehttps://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove from FromScheduledConcurrentStateChange to also support awaiting jobs [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/890\"\u003e#890\u003c/a\u003e](\u003ca href=\"https://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/890\"\u003ehttps://git.jobrunr.io/JobRunr/jobrunr-pro/pulls/890\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable JobScheduler and JobRequestScheduler by default for Micronaut [PR \u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1556\"\u003e#1556\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/pull/1556\"\u003ejobrunr/jobrunr#1556\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\"\u003ehttps://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/b32f0278051c33cfaef9f0d79bcdd93ebaa3235c\"\u003e\u003ccode\u003eb32f027\u003c/code\u003e\u003c/a\u003e PR feedback (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1559\"\u003e#1559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/1ba9156c005bb57567dcb9ac7e5aab1c6c1baef9\"\u003e\u003ccode\u003e1ba9156\u003c/code\u003e\u003c/a\u003e Cleanup after tests (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1558\"\u003e#1558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/556ee9c3178e71129a33be19a15a0166b09475ed\"\u003e\u003ccode\u003e556ee9c\u003c/code\u003e\u003c/a\u003e Prevent dataVersion mismatch exceptions from spamming logs (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1555\"\u003e#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/b34a455eab52595e654df19428c1c16fc8e5d9a9\"\u003e\u003ccode\u003eb34a455\u003c/code\u003e\u003c/a\u003e Fix multiple master nodes (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1557\"\u003e#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/758cd71d05b3438531bfc338b9c05dc6eb7afd93\"\u003e\u003ccode\u003e758cd71\u003c/code\u003e\u003c/a\u003e Enable JobScheduler and JobRequestScheduler by default for Micronaut (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1556\"\u003e#1556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jobrunr/jobrunr/commit/19a04c6cc007d5e265d5cef513a3d5706d48ec43\"\u003e\u003ccode\u003e19a04c6\u003c/code\u003e\u003c/a\u003e Use local maven proxy and gradle cache (\u003ca href=\"https://redirect.github.com/jobrunr/jobrunr/issues/1554\"\u003e#1554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jobrunr/jobrunr/compare/v8.6.0...v8.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.uber.nullaway:nullaway` from 0.13.4 to 0.13.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uber/NullAway/releases\"\u003ecom.uber.nullaway:nullaway's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eNullAway 0.13.6\u003c/h2\u003e\n\u003cp\u003e(NOTE: originally these notes appeared with the 0.13.5 release, but that release was pushed\nincorrectly due to an error in our release process.)\u003c/p\u003e\n\u003cp\u003eIncludes various bug fixes, particularly in JSpecify mode.  Also, the nullaway-annotations\nartifact now includes a \u003ccode\u003e@Contract\u003c/code\u003e annotation.  NullAway also now has a built-in handler\nto reason about field initialization in classes managed by Jakarta Persistence.\u003c/p\u003e\n\u003cp\u003eWork has begun on support  for wildcards in JSpecify mode.  Currently, this support is off\nby default, guarded by the configuration flag \u003ccode\u003eHandleWildcardGenerics\u003c/code\u003e.  The support still\nhas multiple known bugs, and we do not yet recommend enabling it.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInitial subtype checking for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1520\"\u003e#1520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle subtype checking for wildcard super bounds (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1547\"\u003e#1547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle most remaining wildcard subtyping / containment cases (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1548\"\u003e#1548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for \u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1528\"\u003e#1528\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1556\"\u003e#1556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial inference for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1549\"\u003e#1549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix wildcard inference bug with method references (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1553\"\u003e#1553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nullability for return and parameter wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1558\"\u003e#1558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for trick to assert chain of accesses is non-null (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1566\"\u003e#1566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove inference failure error message (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdjust more TreePaths to have correct leaf before calling getTreeType (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1570\"\u003e#1570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Contract annotation to nullaway-annotations by \u003ca href=\"https://github.com/codingkiddo\"\u003e\u003ccode\u003e@​codingkiddo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRun inference for generic method calls nested inside receivers (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor hasAnyAnnotationMatching method (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1583\"\u003e#1583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove handling of \u003ccode\u003evar\u003c/code\u003e-declared local variables (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1573\"\u003e#1573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompensate for more annotations inserted by \u003ccode\u003ejavac\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1574\"\u003e#1574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable test for issue 1500 and add comment (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1560\"\u003e#1560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse ground target types when handling lambdas and method refs passed to generic methods (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1575\"\u003e#1575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix for unbounded wildcard passed to \u003ccode\u003e@NullUnmarked\u003c/code\u003e type variable (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect and warn on annotations directly on wildcard types (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable HandleWildcardGenerics flag when building NullAway (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReport error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor by \u003ca href=\"https://github.com/Vinu2111\"\u003e\u003ccode\u003e@​Vinu2111\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd a handler for Jakarta Persistence to reason about field initialization (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1584\"\u003e#1584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1588\"\u003e#1588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMaintenance\n\u003cul\u003e\n\u003cli\u003eUse Jacoco 0.8.15 snapshot (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1550\"\u003e#1550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate to Gradle 9.5.0 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1554\"\u003e#1554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest with latest Error Prone snapshot on CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1555\"\u003e#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Spring Boot as an integration test (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1557\"\u003e#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable generic bytecode tests on JDK 17 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1561\"\u003e#1561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate spotless and guava-latest deps, removed unused semver4j (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1562\"\u003e#1562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks in more tests (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1563\"\u003e#1563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks for addInputLines and addOutputLines calls (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1564\"\u003e#1564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse Temurin JDK 17 always in CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTell agents not to run multiple Gradle builds in parallel (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate Codecov action to v6 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1587\"\u003e#1587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNullAway 0.13.5\u003c/h2\u003e\n\u003cp\u003eDO NOT USE THIS RELEASE.  It was pushed incorrectly due to an error in our release process.\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/uber/NullAway/blob/master/CHANGELOG.md\"\u003ecom.uber.nullaway:nullaway's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.13.6\u003c/h2\u003e\n\u003cp\u003e(NOTE: originally these notes appeared with the 0.13.5 release, but that release was pushed\nincorrectly due to an error in our release process.)\u003c/p\u003e\n\u003cp\u003eIncludes various bug fixes, particularly in JSpecify mode.  Also, the nullaway-annotations\nartifact now includes a \u003ccode\u003e@Contract\u003c/code\u003e annotation.  NullAway also now has a built-in handler\nto reason about field initialization in classes managed by Jakarta Persistence.\u003c/p\u003e\n\u003cp\u003eWork has begun on support  for wildcards in JSpecify mode.  Currently, this support is off\nby default, guarded by the configuration flag \u003ccode\u003eHandleWildcardGenerics\u003c/code\u003e.  The support still\nhas multiple known bugs, and we do not yet recommend enabling it.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInitial subtype checking for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1520\"\u003e#1520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle subtype checking for wildcard super bounds (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1547\"\u003e#1547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle most remaining wildcard subtyping / containment cases (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1548\"\u003e#1548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for \u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1528\"\u003e#1528\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1556\"\u003e#1556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial inference for wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1549\"\u003e#1549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix wildcard inference bug with method references (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1553\"\u003e#1553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nullability for return and parameter wildcards (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1558\"\u003e#1558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest case for trick to assert chain of accesses is non-null (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1566\"\u003e#1566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove inference failure error message (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdjust more TreePaths to have correct leaf before calling getTreeType (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1570\"\u003e#1570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Contract annotation to nullaway-annotations by \u003ca href=\"https://github.com/codingkiddo\"\u003e\u003ccode\u003e@​codingkiddo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRun inference for generic method calls nested inside receivers (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor hasAnyAnnotationMatching method (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1583\"\u003e#1583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove handling of \u003ccode\u003evar\u003c/code\u003e-declared local variables (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1573\"\u003e#1573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompensate for more annotations inserted by \u003ccode\u003ejavac\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1574\"\u003e#1574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable test for issue 1500 and add comment (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1560\"\u003e#1560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse ground target types when handling lambdas and method refs passed to generic methods (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1575\"\u003e#1575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix for unbounded wildcard passed to \u003ccode\u003e@NullUnmarked\u003c/code\u003e type variable (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect and warn on annotations directly on wildcard types (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable HandleWildcardGenerics flag when building NullAway (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReport error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor by \u003ca href=\"https://github.com/Vinu2111\"\u003e\u003ccode\u003e@​Vinu2111\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd a handler for Jakarta Persistence to reason about field initialization (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1584\"\u003e#1584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1588\"\u003e#1588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMaintenance\n\u003cul\u003e\n\u003cli\u003eUse Jacoco 0.8.15 snapshot (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1550\"\u003e#1550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate to Gradle 9.5.0 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1554\"\u003e#1554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest with latest Error Prone snapshot on CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1555\"\u003e#1555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Spring Boot as an integration test (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1557\"\u003e#1557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable generic bytecode tests on JDK 17 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1561\"\u003e#1561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate spotless and guava-latest deps, removed unused semver4j (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1562\"\u003e#1562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks in more tests (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1563\"\u003e#1563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse text blocks for addInputLines and addOutputLines calls (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1564\"\u003e#1564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse Temurin JDK 17 always in CI (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTell agents not to run multiple Gradle builds in parallel (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate Codecov action to v6 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1587\"\u003e#1587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/fa850b5fe8bf3603d3e50a8993956b747f814b23\"\u003e\u003ccode\u003efa850b5\u003c/code\u003e\u003c/a\u003e Prepare for release 0.13.6.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/e188182a87170b8f12ecea7cf45526bdde028dd0\"\u003e\u003ccode\u003ee188182\u003c/code\u003e\u003c/a\u003e Notes for 0.13.6 release (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1592\"\u003e#1592\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/c09d2028545881603d1c98b11e5b7e0653cf8bc4\"\u003e\u003ccode\u003ec09d202\u003c/code\u003e\u003c/a\u003e Add 0.13.5 release notes to changelog (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1589\"\u003e#1589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/d9d0392e94ea449669623a0bef4f42e5dd8dd357\"\u003e\u003ccode\u003ed9d0392\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1588\"\u003e#1588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/ec978b9b18afbe48e4c68b55a8e4919c70292a04\"\u003e\u003ccode\u003eec978b9\u003c/code\u003e\u003c/a\u003e Update Codecov action to v6 (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1587\"\u003e#1587\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/69ba115d7395a7d0c7d0128480b01cb604afe488\"\u003e\u003ccode\u003e69ba115\u003c/code\u003e\u003c/a\u003e Add a handler for Jakarta Persistence to reason about field initialization (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/661f37443b0205102b23a99a994d409f9aa0cf14\"\u003e\u003ccode\u003e661f374\u003c/code\u003e\u003c/a\u003e Report error when \u003ca href=\"https://github.com/Initializer\"\u003e\u003ccode\u003e@​Initializer\u003c/code\u003e\u003c/a\u003e is used on a constructor (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1546\"\u003e#1546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/f790ac9ef7ba642096bbcfea04126484d13d7b98\"\u003e\u003ccode\u003ef790ac9\u003c/code\u003e\u003c/a\u003e Enable HandleWildcardGenerics flag when building NullAway (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/31b14ce725d8f544eb2ec84f4912e16cfcb48c47\"\u003e\u003ccode\u003e31b14ce\u003c/code\u003e\u003c/a\u003e Detect and warn on annotations directly on wildcard types (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uber/NullAway/commit/c183d49078ba2b75d3309250cb320b28fb086f31\"\u003e\u003ccode\u003ec183d49\u003c/code\u003e\u003c/a\u003e Fix for unbounded wildcard passed to \u003ccode\u003e@NullUnmarked\u003c/code\u003e type variable (\u003ca href=\"https://redirect.github.com/uber/NullAway/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/uber/NullAway/compare/v0.13.4...v0.13.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.tika:tika-core` from 3.3.0 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/tika/blob/3.3.1/CHANGES.txt\"\u003eorg.apache.tika:tika-core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eRelease 3.3.1 - 5/20/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDependency upgrades  (TIKA-4695).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse the IANA-registered text/markdown as the primary media type, with\ntext/x-web-markdown and text/x-markdown kept as aliases (TIKA-4724).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix several potential resource/file-handle leaks across the OOXML and ODF parsers,\nthe HTTP fetcher, the gRPC server, and ForkClient (TIKA-4704).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe resourceName of a nested tarball no longer includes the parent\ndirectories of its parent gzip file, and fix a typo in the .gz extension\n(TIKA-4705).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRelease 3.3.0 - 3/18/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSwitch to poi-ooxml-full (TIKA-4563).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUsers need to add \u0026quot;allowAbsolutePaths=true\u0026quot; for the FileSystemFetcher to fetch\nan absolute path (TIKA-4649).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd a markdown option for content handlers (TIKA-4563).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove zip parsing (TIKA-4650).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd detection of compressed bmp (TIKA-4511).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow per file timeouts in tika-pipes (TIKA-4497).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd matroska detector (TIKA-1180).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow multiple values for many Dublin Core keys (TIKA-4466).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExtract macros by default in tika-app's commandline and gui (TIKA-4472).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove extraction of Javascript from PDFs (TIKA-4465).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRelease 3.2.3 - 9/11/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAllow backwards compatibility with versions of commons-compress before 1.28.0 (TIKA-4469).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix XFA parsing within PDFs when woodstox is on the classpath as in tika-server (TIKA-4482).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency updates.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRelease 3.2.2 - 8/6/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eImprove detection of encrypted ODT files (TIKA-4459)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency updates (TIKA-4455).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/bf9aa9249a4f9ff14f53bcd419efdebd92253351\"\u003e\u003ccode\u003ebf9aa92\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 3.3.1-rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/bc80738930257290d88e3e94ed433c9eb16b2d75\"\u003e\u003ccode\u003ebc80738\u003c/code\u003e\u003c/a\u003e TIKA-4729 - prep for 3.3.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/5a2e4a71aae3e399b804a0506f9cbc5bf56d2850\"\u003e\u003ccode\u003e5a2e4a7\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, jbig2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/75dbf683e9b799de3781595cff5f1e034c4074cd\"\u003e\u003ccode\u003e75dbf68\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, enforcer plugin, azure\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/3b6e1f6c8cad97a6afb8efd6492b13c8272b6262\"\u003e\u003ccode\u003e3b6e1f6\u003c/code\u003e\u003c/a\u003e TIKA-4695: update plexus-classworlds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/1de9eb9c51236e8ce434be9bf40ebac946381090\"\u003e\u003ccode\u003e1de9eb9\u003c/code\u003e\u003c/a\u003e TIKA-4695: update maven-model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/90b43fe5695dcb8f68d54873986f190f47aee39d\"\u003e\u003ccode\u003e90b43fe\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, junrar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/2485c0d0521c5d3e1b70255337a0059b73d3ecd7\"\u003e\u003ccode\u003e2485c0d\u003c/code\u003e\u003c/a\u003e TIKA-4695: update aws, asm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/687006f73d16771d2306a3f314d0e31f8d1489dc\"\u003e\u003ccode\u003e687006f\u003c/code\u003e\u003c/a\u003e TIKA-4695: update slf4j\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/tika/commit/bdaa2afae1f6346354776770dfc7d8c7156ab2ab\"\u003e\u003ccode\u003ebdaa2af\u003c/code\u003e\u003c/a\u003e [TIKA-4724] Use IANA-registered text/markdown as primary type (\u003ca href=\"https://redirect.github.com/apache/tika/issues/2806\"\u003e#2806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/tika/compare/3.3.0...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-codec-http` from 4.2.13.Final to 4.2.15.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-codec-http's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.15.Final\u003c/h2\u003e\n\u003ch2\u003eSecurity fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-h2qv-fj59-j46j\"\u003eCVE-2026-48059\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5pvg-856g-cp85\"\u003eCVE-2026-47691\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-563q-j3cm-6jxm\"\u003eCVE-2026-50560\u003c/a\u003e: DDoS in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5w86-c3rq-vjj7\"\u003eCVE-2026-50011\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3244-j874-rhc2\"\u003eCVE-2026-44250\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6ghj-frrj-jjj3\"\u003eCVE-2026-44890\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cq4q-cv5g-r8q5\"\u003eCVE-2026-50009\u003c/a\u003e: information disclosure and denial of service in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3qp7-7mw8-wx86\"\u003eCVE-2026-44249\u003c/a\u003e: IPv6 subnet filter bypass in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-hvcg-qmg6-jm4c\"\u003eCVE-2026-50020\u003c/a\u003e: request smuggling in \u003ccode\u003eio.netty:netty-codec-http\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2rx-5r8w-8xr2\"\u003eCVE-2026-44892\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cc37-9q2j-3hfv\"\u003eCVE-2026-44893\u003c/a\u003e: memory leak in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cmm3-54f8-px4j\"\u003eCVE-2026-44894\u003c/a\u003e: traffic amplification in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c653-97m9-rcg9\"\u003eCVE-2026-50010\u003c/a\u003e: TLS hostname verification accidentally disabled in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-xmv7-r254-6q78\"\u003eCVE-2026-45673\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-x4gw-5cx5-pgmh\"\u003eCVE-2026-45416\u003c/a\u003e: excessive memory usage from SNIHandler in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-w573-9ffj-6ff9\"\u003eCVE-2026-45536\u003c/a\u003e: file descriptor leak in \u003ccode\u003eio.netty:netty-transport-native-epoll\u003c/code\u003e and \u003ccode\u003eio.netty:netty-transport-native-kqueue\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-676x-f7gg-47vc\"\u003eCVE-2026-45674\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5xrh-qmmq-w6ch\"\u003eCVE-2026-46340\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-transport-sctp\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5x3r-wrvg-rp6q\"\u003eCVE-2026-47244\u003c/a\u003e: denial of service in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6jv9-x5w9-2ccm\"\u003eCVE-2026-48006\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-4grm-h2qv-h6w6\"\u003eCVE-2026-48748\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2gf-v879-257j\"\u003eCVE-2026-48043\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race in io.netty.channel.uring.IoUringIoHandler.wakeup 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/16836\"\u003enetty/netty#16836\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP/2: Parse request-target path like Vert.x 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/16810\"\u003enetty/netty#16810\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: ChannelInitializer: correct misleading comment on exceptionCaught route by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16853\"\u003enetty/netty#16853\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlowControlHandler: Suppress duplicate channelReadComplete after draining queue (\u003ca href=\"https://redirect.github.com/netty/netty/issues/15053\"\u003e#15053\u003c/a\u003e) by \u003ca href=\"https://github.com/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePass maxAllocation to Brotli and Zstd decoders by \u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix revapi warnings 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/16885\"\u003enetty/netty#16885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SCTP and Redis 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/16893\"\u003enetty/netty#16893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd maxWindowLog parameter to ZstdDecoder to bound memory allocation by \u003ca href=\"https://github.com/skyguard1\"\u003e\u003ccode\u003e@​skyguard1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16850\"\u003enetty/netty#16850\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remaining Length by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16890\"\u003enetty/netty#16890\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/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\"\u003ehttps://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003enetty-4.2.14.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 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/16748\"\u003enetty/netty#16748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP: Re-add constructor to HttpProxyHandler that was removed by mistake 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/16747\"\u003enetty/netty#16747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMarshalling: Explicit document security requirements 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/16752\"\u003enetty/netty#16752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix io_uring op completion TRACE logging 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/16755\"\u003enetty/netty#16755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuic: Ensure writes are done before notify close promise of QuicheQui… 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/16758\"\u003enetty/netty#16758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid re-parsing openssl key material with non-cached provider 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/16759\"\u003enetty/netty#16759\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/a41f7b289ce1d697c50846f3ade3983e22b2ed40\"\u003e\u003ccode\u003ea41f7b2\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.15.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/2394530bdb6837d928c2ec0b4d8f598487059ef9\"\u003e\u003ccode\u003e2394530\u003c/code\u003e\u003c/a\u003e Auto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/0bd1657a601da85c324d28562dc7d1ae220ad3a7\"\u003e\u003ccode\u003e0bd1657\u003c/code\u003e\u003c/a\u003e Add maxWindowLog parameter to ZstdDecoder to bound memory allocation (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16850\"\u003e#16850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/76291f58a901e021289e5c30618b6e136d605163\"\u003e\u003ccode\u003e76291f5\u003c/code\u003e\u003c/a\u003e Fix SCTP and Redis tests (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16893\"\u003e#16893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/e067b6e3376afee7629481d46333c3acf7f95943\"\u003e\u003ccode\u003ee067b6e\u003c/code\u003e\u003c/a\u003e Fix revapi warnings (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/5a52600d96cc6f4d38098e0645be53ecbfc8a811\"\u003e\u003ccode\u003e5a52600\u003c/code\u003e\u003c/a\u003e Pass maxAllocation to Brotli and Zstd decoders (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16844\"\u003e#16844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/541add0f7f5486ef15834da51d8dd983ec12e2b3\"\u003e\u003ccode\u003e541add0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/270800e5d336913606493a562c8200ecf321a0c1\"\u003e\u003ccode\u003e270800e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/3d45a1e4e8eb99144f716e54be5ac57e525fa7ca\"\u003e\u003ccode\u003e3d45a1e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/75127cab731ee35068d1f0667bffa188bc332f5d\"\u003e\u003ccode\u003e75127ca\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.13.Final...netty-4.2.15.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-codec-http2` from 4.2.13.Final to 4.2.15.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-codec-http2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.15.Final\u003c/h2\u003e\n\u003ch2\u003eSecurity fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-h2qv-fj59-j46j\"\u003eCVE-2026-48059\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5pvg-856g-cp85\"\u003eCVE-2026-47691\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-563q-j3cm-6jxm\"\u003eCVE-2026-50560\u003c/a\u003e: DDoS in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5w86-c3rq-vjj7\"\u003eCVE-2026-50011\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3244-j874-rhc2\"\u003eCVE-2026-44250\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6ghj-frrj-jjj3\"\u003eCVE-2026-44890\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cq4q-cv5g-r8q5\"\u003eCVE-2026-50009\u003c/a\u003e: information disclosure and denial of service in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3qp7-7mw8-wx86\"\u003eCVE-2026-44249\u003c/a\u003e: IPv6 subnet filter bypass in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-hvcg-qmg6-jm4c\"\u003eCVE-2026-50020\u003c/a\u003e: request smuggling in \u003ccode\u003eio.netty:netty-codec-http\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2rx-5r8w-8xr2\"\u003eCVE-2026-44892\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cc37-9q2j-3hfv\"\u003eCVE-2026-44893\u003c/a\u003e: memory leak in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cmm3-54f8-px4j\"\u003eCVE-2026-44894\u003c/a\u003e: traffic amplification in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c653-97m9-rcg9\"\u003eCVE-2026-50010\u003c/a\u003e: TLS hostname verification accidentally disabled in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-xmv7-r254-6q78\"\u003eCVE-2026-45673\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-x4gw-5cx5-pgmh\"\u003eCVE-2026-45416\u003c/a\u003e: excessive memory usage from SNIHandler in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-w573-9ffj-6ff9\"\u003eCVE-2026-45536\u003c/a\u003e: file descriptor leak in \u003ccode\u003eio.netty:netty-transport-native-epoll\u003c/code\u003e and \u003ccode\u003eio.netty:netty-transport-native-kqueue\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-676x-f7gg-47vc\"\u003eCVE-2026-45674\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5xrh-qmmq-w6ch\"\u003eCVE-2026-46340\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-transport-sctp\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5x3r-wrvg-rp6q\"\u003eCVE-2026-47244\u003c/a\u003e: denial of service in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6jv9-x5w9-2ccm\"\u003eCVE-2026-48006\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-4grm-h2qv-h6w6\"\u003eCVE-2026-48748\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2gf-v879-257j\"\u003eCVE-2026-48043\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race in io.netty.channel.uring.IoUringIoHandler.wakeup 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/16836\"\u003enetty/netty#16836\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP/2: Parse request-target path like Vert.x 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/16810\"\u003enetty/netty#16810\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: ChannelInitializer: correct misleading comment on exceptionCaught route by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16853\"\u003enetty/netty#16853\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlowControlHandler: Suppress duplicate channelReadComplete after draining queue (\u003ca href=\"https://redirect.github.com/netty/netty/issues/15053\"\u003e#15053\u003c/a\u003e) by \u003ca href=\"https://github.com/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePass maxAllocation to Brotli and Zstd decoders by \u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix revapi warnings 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/16885\"\u003enetty/netty#16885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SCTP and Redis 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/16893\"\u003enetty/netty#16893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd maxWindowLog parameter to ZstdDecoder to bound memory allocation by \u003ca href=\"https://github.com/skyguard1\"\u003e\u003ccode\u003e@​skyguard1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16850\"\u003enetty/netty#16850\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remaining Length by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16890\"\u003enetty/netty#16890\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/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\"\u003ehttps://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003enetty-4.2.14.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 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/16748\"\u003enetty/netty#16748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP: Re-add constructor to HttpProxyHandler that was removed by mistake 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/16747\"\u003enetty/netty#16747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMarshalling: Explicit document security requirements 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/16752\"\u003enetty/netty#16752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix io_uring op completion TRACE logging 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/16755\"\u003enetty/netty#16755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuic: Ensure writes are done before notify close promise of QuicheQui… 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/16758\"\u003enetty/netty#16758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid re-parsing openssl key material with non-cached provider 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/16759\"\u003enetty/netty#16759\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/a41f7b289ce1d697c50846f3ade3983e22b2ed40\"\u003e\u003ccode\u003ea41f7b2\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.15.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/2394530bdb6837d928c2ec0b4d8f598487059ef9\"\u003e\u003ccode\u003e2394530\u003c/code\u003e\u003c/a\u003e Auto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/0bd1657a601da85c324d28562dc7d1ae220ad3a7\"\u003e\u003ccode\u003e0bd1657\u003c/code\u003e\u003c/a\u003e Add maxWindowLog parameter to ZstdDecoder to bound memory allocation (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16850\"\u003e#16850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/76291f58a901e021289e5c30618b6e136d605163\"\u003e\u003ccode\u003e76291f5\u003c/code\u003e\u003c/a\u003e Fix SCTP and Redis tests (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16893\"\u003e#16893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/e067b6e3376afee7629481d46333c3acf7f95943\"\u003e\u003ccode\u003ee067b6e\u003c/code\u003e\u003c/a\u003e Fix revapi warnings (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/5a52600d96cc6f4d38098e0645be53ecbfc8a811\"\u003e\u003ccode\u003e5a52600\u003c/code\u003e\u003c/a\u003e Pass maxAllocation to Brotli and Zstd decoders (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16844\"\u003e#16844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/541add0f7f5486ef15834da51d8dd983ec12e2b3\"\u003e\u003ccode\u003e541add0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/270800e5d336913606493a562c8200ecf321a0c1\"\u003e\u003ccode\u003e270800e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/3d45a1e4e8eb99144f716e54be5ac57e525fa7ca\"\u003e\u003ccode\u003e3d45a1e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/75127cab731ee35068d1f0667bffa188bc332f5d\"\u003e\u003ccode\u003e75127ca\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.13.Final...netty-4.2.15.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-codec` from 4.2.13.Final to 4.2.15.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-codec's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.15.Final\u003c/h2\u003e\n\u003ch2\u003eSecurity fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-h2qv-fj59-j46j\"\u003eCVE-2026-48059\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5pvg-856g-cp85\"\u003eCVE-2026-47691\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-563q-j3cm-6jxm\"\u003eCVE-2026-50560\u003c/a\u003e: DDoS in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5w86-c3rq-vjj7\"\u003eCVE-2026-50011\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3244-j874-rhc2\"\u003eCVE-2026-44250\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6ghj-frrj-jjj3\"\u003eCVE-2026-44890\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cq4q-cv5g-r8q5\"\u003eCVE-2026-50009\u003c/a\u003e: information disclosure and denial of service in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-3qp7-7mw8-wx86\"\u003eCVE-2026-44249\u003c/a\u003e: IPv6 subnet filter bypass in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-hvcg-qmg6-jm4c\"\u003eCVE-2026-50020\u003c/a\u003e: request smuggling in \u003ccode\u003eio.netty:netty-codec-http\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2rx-5r8w-8xr2\"\u003eCVE-2026-44892\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cc37-9q2j-3hfv\"\u003eCVE-2026-44893\u003c/a\u003e: memory leak in \u003ccode\u003eio.netty:netty-codec-haproxy\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-cmm3-54f8-px4j\"\u003eCVE-2026-44894\u003c/a\u003e: traffic amplification in \u003ccode\u003eio.netty:netty-codec-classes-quic\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c653-97m9-rcg9\"\u003eCVE-2026-50010\u003c/a\u003e: TLS hostname verification accidentally disabled in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-xmv7-r254-6q78\"\u003eCVE-2026-45673\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-x4gw-5cx5-pgmh\"\u003eCVE-2026-45416\u003c/a\u003e: excessive memory usage from SNIHandler in \u003ccode\u003eio.netty:netty-handler\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-w573-9ffj-6ff9\"\u003eCVE-2026-45536\u003c/a\u003e: file descriptor leak in \u003ccode\u003eio.netty:netty-transport-native-epoll\u003c/code\u003e and \u003ccode\u003eio.netty:netty-transport-native-kqueue\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-676x-f7gg-47vc\"\u003eCVE-2026-45674\u003c/a\u003e: DNS cache poisoning in \u003ccode\u003eio.netty:netty-resolver-dns\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5xrh-qmmq-w6ch\"\u003eCVE-2026-46340\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-transport-sctp\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-5x3r-wrvg-rp6q\"\u003eCVE-2026-47244\u003c/a\u003e: denial of service in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-6jv9-x5w9-2ccm\"\u003eCVE-2026-48006\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-redis\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-4grm-h2qv-h6w6\"\u003eCVE-2026-48748\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http3\u003c/code\u003e (high).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/security/advisories/GHSA-c2gf-v879-257j\"\u003eCVE-2026-48043\u003c/a\u003e: memory exhaustion in \u003ccode\u003eio.netty:netty-codec-http2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race in io.netty.channel.uring.IoUringIoHandler.wakeup 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/16836\"\u003enetty/netty#16836\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP/2: Parse request-target path like Vert.x 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/16810\"\u003enetty/netty#16810\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: ChannelInitializer: correct misleading comment on exceptionCaught route by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16853\"\u003enetty/netty#16853\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlowControlHandler: Suppress duplicate channelReadComplete after draining queue (\u003ca href=\"https://redirect.github.com/netty/netty/issues/15053\"\u003e#15053\u003c/a\u003e) by \u003ca href=\"https://github.com/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePass maxAllocation to Brotli and Zstd decoders by \u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix revapi warnings 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/16885\"\u003enetty/netty#16885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SCTP and Redis 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/16893\"\u003enetty/netty#16893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd maxWindowLog parameter to ZstdDecoder to bound memory allocation by \u003ca href=\"https://github.com/skyguard1\"\u003e\u003ccode\u003e@​skyguard1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16850\"\u003enetty/netty#16850\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAuto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remaining Length by \u003ca href=\"https://github.com/netty-project-bot\"\u003e\u003ccode\u003e@​netty-project-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16890\"\u003enetty/netty#16890\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/schiemon\"\u003e\u003ccode\u003e@​schiemon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16837\"\u003enetty/netty#16837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fedinskiy\"\u003e\u003ccode\u003e@​fedinskiy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16844\"\u003enetty/netty#16844\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\"\u003ehttps://github.com/netty/netty/compare/netty-4.2.14.Final...netty-4.2.15.Final\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003enetty-4.2.14.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 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/16748\"\u003enetty/netty#16748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP: Re-add constructor to HttpProxyHandler that was removed by mistake 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/16747\"\u003enetty/netty#16747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMarshalling: Explicit document security requirements 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/16752\"\u003enetty/netty#16752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix io_uring op completion TRACE logging 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/16755\"\u003enetty/netty#16755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuic: Ensure writes are done before notify close promise of QuicheQui… 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/16758\"\u003enetty/netty#16758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid re-parsing openssl key material with non-cached provider 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/16759\"\u003enetty/netty#16759\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/a41f7b289ce1d697c50846f3ade3983e22b2ed40\"\u003e\u003ccode\u003ea41f7b2\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.15.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/2394530bdb6837d928c2ec0b4d8f598487059ef9\"\u003e\u003ccode\u003e2394530\u003c/code\u003e\u003c/a\u003e Auto-port 4.2: MQTT: Reject malformed no-payload packets with non-zero Remain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/0bd1657a601da85c324d28562dc7d1ae220ad3a7\"\u003e\u003ccode\u003e0bd1657\u003c/code\u003e\u003c/a\u003e Add maxWindowLog parameter to ZstdDecoder to bound memory allocation (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16850\"\u003e#16850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/76291f58a901e021289e5c30618b6e136d605163\"\u003e\u003ccode\u003e76291f5\u003c/code\u003e\u003c/a\u003e Fix SCTP and Redis tests (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16893\"\u003e#16893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/e067b6e3376afee7629481d46333c3acf7f95943\"\u003e\u003ccode\u003ee067b6e\u003c/code\u003e\u003c/a\u003e Fix revapi warnings (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/5a52600d96cc6f4d38098e0645be53ecbfc8a811\"\u003e\u003ccode\u003e5a52600\u003c/code\u003e\u003c/a\u003e Pass maxAllocation to Brotli and Zstd decoders (\u003ca href=\"https://redirect.github.com/netty/netty/issues/16844\"\u003e#16844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/541add0f7f5486ef15834da51d8dd983ec12e2b3\"\u003e\u003ccode\u003e541add0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/270800e5d336913606493a562c8200ecf321a0c1\"\u003e\u003ccode\u003e270800e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/3d45a1e4e8eb99144f716e54be5ac57e525fa7ca\"\u003e\u003ccode\u003e3d45a1e\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/75127cab731ee35068d1f0667bffa188bc332f5d\"\u003e\u003ccode\u003e75127ca\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.13.Final...netty-4.2.15.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.core:jackson-core` from 2.21.3 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/d763562443cc9d6e224a6265ca3710195c813cf5\"\u003e\u003ccode\u003ed763562\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/e5c69fe5f7be957490d52dae70787e7a8138ddda\"\u003e\u003ccode\u003ee5c69fe\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0ba6a369eaa19a71b2b63fe40b1e9d317c0eb522\"\u003e\u003ccode\u003e0ba6a36\u003c/code\u003e\u003c/a\u003e Bump version after release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/b106011025f6447695e21ddbb9fd3952d284d10c\"\u003e\u003ccode\u003eb106011\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/18a7fe416a0bf666f6c2ddc6da883bc96382dd2d\"\u003e\u003ccode\u003e18a7fe4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/503a14ffa4a74ad56a02fd25f0cd997df163c647\"\u003e\u003ccode\u003e503a14f\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/ab95bc0056119f08ef721849be5e5f2c256b82cd\"\u003e\u003ccode\u003eab95bc0\u003c/code\u003e\u003c/a\u003e ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0a4b8dedee08e159fddca5eb8e812c1ad881017a\"\u003e\u003ccode\u003e0a4b8de\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/719a42f3676ab3c10e3cd057966807b2206151e7\"\u003e\u003ccode\u003e719a42f\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/92488484b64bc348c43e5a7ff910d93c2f9e9b9c\"\u003e\u003ccode\u003e9248848\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-core/compare/jackson-core-2.21.3...jackson-core-2.22.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.jk1.dependency-license-report` from 3.1.2 to 3.1.3\n\nUpdates `io.sentry.jvm.gradle` from 6.6.0 to 6.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-android-gradle-plugin/releases\"\u003eio.sentry.jvm.gradle's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.10.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the Kotlin 2.4 compiler in the Compose tracing compiler plugin (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompose tracing no longer adds the Sentry modifier multiple times for chained modifiers (e.g. \u003ccode\u003eModifier.fillMaxSize().padding()\u003c/code\u003e) on Kotlin 2.2 and newer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump Android SDK from v8.43.0 to v8.43.1 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1261\"\u003e#1261\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8431\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.43.0...8.43.1\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eBump CLI from v3.4.3 to v3.5.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1251\"\u003e#1251\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#350\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/compare/3.4.3...3.5.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edebug\u003c/code\u003e extension property is now typed as \u003ccode\u003eProperty\u0026lt;Boolean\u0026gt;\u003c/code\u003e instead of \u003ccode\u003eProperty\u0026lt;Boolean?\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.9.0\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDefer instrumentation log directory creation to execution time and use variant-specific paths to prevent log file corruption during parallel variant transforms (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1236\"\u003e#1236\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump CLI from v3.4.2 to v3.4.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1215\"\u003e#1215\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#343\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/compare/3.4.2...3.4.3\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eBump Android SDK from v8.42.0 to v8.43.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1241\"\u003e#1241\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8430\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.42.0...8.43.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.8.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFail fast with a clear error when Snapshots feature is used with AGP 7.x (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1212\"\u003e#1212\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.8.0\u003c/h2\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump Android SDK from v8.41.0 to v8.42.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1207\"\u003e#1207\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8420\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.41.0...8.42.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.7.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-android-gradle-plugin/blob/main/CHANGELOG.md\"\u003eio.sentry.jvm.gradle's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.10.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the Kotlin 2.4 compiler in the Compose tracing compiler plugin (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompose tracing no longer adds the Sentry modifier multiple times for chained modifiers (e.g. \u003ccode\u003eModifier.fillMaxSize().padding()\u003c/code\u003e) on Kotlin 2.2 and newer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eThe published Gradle plugin and \u003ccode\u003esentry-snapshots-runtime\u003c/code\u003e POMs no longer declare a transitive \u003ccode\u003ekotlin-stdlib\u003c/code\u003e dependency (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1276\"\u003e#1276\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump Android SDK from v8.43.0 to v8.43.1 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1261\"\u003e#1261\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#8431\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-java/compare/8.43.0...8.43.1\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eBump CLI from v3.4.3 to v3.5.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-android-gradle-plugin/pull/1251\"\u003e#1251\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#350\"\u003echangelog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-cli/compare/3.4.3...3.5.0\"\u003ediff\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAPI Change...\n\n_Description has been truncated_","html_url":"https://github.com/digitalservicebund/ris-norms/pull/2335","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalservicebund%2Fris-norms/issues/2335","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2335/packages"}},{"old_version":"4.4.1.3373","new_version":"7.3.1.8318","update_type":"major","path":null,"pr_created_at":"2026-06-04T02:41:27.000Z","version_change":"4.4.1.3373 → 7.3.1.8318","issue":{"uuid":"4585313286","node_id":"PR_kwDOFx0z0M7igGO9","number":1883,"state":"closed","title":"Bump org.sonarqube from 4.4.1.3373 to 7.3.1.8318","user":"dependabot[bot]","labels":["Stale","dependencies","java"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-06-19T01:16:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-04T02:41:27.000Z","updated_at":"2026-06-19T01:17:17.000Z","time_to_close":1290922,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"4.4.1.3373","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 4.4.1.3373 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=4.4.1.3373\u0026new-version=7.3.1.8318)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot 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/corda/corda-api/pull/1883","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/corda%2Fcorda-api/issues/1883","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1883/packages"}},{"old_version":"7.3.0.8198","new_version":"7.3.1.8318","update_type":"patch","path":null,"pr_created_at":"2026-06-03T23:29:21.000Z","version_change":"7.3.0.8198 → 7.3.1.8318","issue":{"uuid":"4584421743","node_id":"PR_kwDOHW4HaM7idKMe","number":2121,"state":"open","title":"chore(deps): bump org.sonarqube from 7.3.0.8198 to 7.3.1.8318","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-03T23:29:21.000Z","updated_at":"2026-06-03T23:34:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.3.0.8198 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.3.0.8198\u0026new-version=7.3.1.8318)](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/microsoft/kiota-java/pull/2121","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fkiota-java/issues/2121","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2121/packages"}},{"old_version":"7.3.0.8198","new_version":"7.3.1.8318","update_type":"patch","path":"/hooks/persistence-defectdojo/hook","pr_created_at":"2026-06-03T23:26:59.000Z","version_change":"7.3.0.8198 → 7.3.1.8318","issue":{"uuid":"4584410113","node_id":"PR_kwDOBM-Q_c7idHta","number":3663,"state":"open","title":"Bump the gradle-version-updates group in /hooks/persistence-defectdojo/hook with 2 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-03T23:26:59.000Z","updated_at":"2026-06-03T23:28:06.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"gradle-version-updates","update_count":2,"packages":[{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.21.3","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318"}],"path":"/hooks/persistence-defectdojo/hook","ecosystem":"maven"},"body":"Bumps the gradle-version-updates group in /hooks/persistence-defectdojo/hook with 2 updates: [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) and org.sonarqube.\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.21.3 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/112e8591b5e14dff30c278c142d8111231c3a48f\"\u003e\u003ccode\u003e112e859\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2cae2ce236587ee18c58e40e01d432a077b3e7ae\"\u003e\u003ccode\u003e2cae2ce\u003c/code\u003e\u003c/a\u003e Prep for 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7955d2113f21d1027f0b643e5fbca4a1feae5964\"\u003e\u003ccode\u003e7955d21\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8922a05c6e46f790b67e64e15585eb070b6ebc6d\"\u003e\u003ccode\u003e8922a05\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/1fa994366741173fb38bc7c194666819ade60f6d\"\u003e\u003ccode\u003e1fa9943\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/d1abd31e4fec3035965d57a05a6256171ea8d980\"\u003e\u003ccode\u003ed1abd31\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.21.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2aaea43db8480aa7d405ebc0de503cffc864f6f6\"\u003e\u003ccode\u003e2aaea43\u003c/code\u003e\u003c/a\u003e Prep for 2.21.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/902ec69efea40cdf1647c6fb49fb78734a88f3e6\"\u003e\u003ccode\u003e902ec69\u003c/code\u003e\u003c/a\u003e Update Woodstox/stax2-api (to 7.2.0/4.3.0)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/257064709f8ea9ca84ea5d569080f9daacc0e017\"\u003e\u003ccode\u003e2570647\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/9d3a9d54e40312ef0ac9192d599b59b541f65fb8\"\u003e\u003ccode\u003e9d3a9d5\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.21.3...jackson-bom-2.22.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.sonarqube` from 7.3.0.8198 to 7.3.1.8318\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/secureCodeBox/secureCodeBox/pull/3663","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/secureCodeBox%2FsecureCodeBox/issues/3663","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3663/packages"}},{"old_version":"7.3.0.8198","new_version":"7.3.1.8318","update_type":"patch","path":null,"pr_created_at":"2026-06-03T23:10:51.000Z","version_change":"7.3.0.8198 → 7.3.1.8318","issue":{"uuid":"4584335302","node_id":"PR_kwDOGdHfQM7ic3lc","number":2637,"state":"open","title":"Bump org.sonarqube from 7.3.0.8198 to 7.3.1.8318","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-03T23:10:51.000Z","updated_at":"2026-06-03T23:16:34.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.3.0.8198","new_version":"7.3.1.8318","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.3.0.8198 to 7.3.1.8318.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.3.0.8198\u0026new-version=7.3.1.8318)](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/wrk-tafel/admin/pull/2637","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/wrk-tafel%2Fadmin/issues/2637","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2637/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-21T01:10:13.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4490923096","node_id":"PR_kwDODf4ejs7dv_2n","number":60,"state":"closed","title":"build(deps): bump the gradle group across 1 directory with 32 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-23T07:07:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-21T01:10:13.000Z","updated_at":"2026-05-23T07:07:51.000Z","time_to_close":194256,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"gradle","update_count":32,"packages":[{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"commons-io:commons-io","old_version":"2.21.0","new_version":"2.22.0"},{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.21.2","new_version":"2.21.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.flywaydb:flyway-core","old_version":"12.3.0","new_version":"12.6.1"},{"name":"org.flywaydb:flyway-database-hsqldb","old_version":"12.3.0","new_version":"12.6.1"},{"name":"org.xerial:sqlite-jdbc","old_version":"3.51.3.0","new_version":"3.53.1.0","repository_url":"https://github.com/xerial/sqlite-jdbc"},{"name":"org.graalvm.js:js-community","old_version":"25.0.2","new_version":"25.0.3","repository_url":"https://github.com/oracle/graal"},{"name":"org.graalvm.js:js-scriptengine","old_version":"25.0.2","new_version":"25.0.3","repository_url":"https://github.com/graalvm/graaljs"},{"name":"com.graphql-java:graphql-java","old_version":"25.0","new_version":"26.0","repository_url":"https://github.com/graphql-java/graphql-java"},{"name":"org.apache.groovy:groovy-all","old_version":"5.0.5","new_version":"5.0.6","repository_url":"https://github.com/apache/groovy"},{"name":"io.grpc:grpc-protobuf","old_version":"1.80.0","new_version":"1.81.0","repository_url":"https://github.com/grpc/grpc-java"},{"name":"com.drewnoakes:metadata-extractor","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/drewnoakes/metadata-extractor"},{"name":"dev.langchain4j:langchain4j","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-azure-open-ai","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-ollama","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-open-ai","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"dev.langchain4j:langchain4j-google-ai-gemini","old_version":"1.12.2","new_version":"1.15.0","repository_url":"https://github.com/langchain4j/langchain4j"},{"name":"org.bouncycastle:bcmail-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.bouncycastle:bcpkix-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"io.swagger:swagger-compat-spec-parser","old_version":"1.0.75","new_version":"1.0.76"},{"name":"io.swagger.parser.v3:swagger-parser","old_version":"2.1.39","new_version":"2.1.42","repository_url":"https://github.com/swagger-api/swagger-parser"},{"name":"org.thymeleaf:thymeleaf","old_version":"3.1.3.RELEASE","new_version":"3.1.5.RELEASE"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.7","new_version":"4.0.8"},{"name":"org.seleniumhq.selenium:selenium-java","old_version":"4.41.0","new_version":"4.44.0","repository_url":"https://github.com/SeleniumHQ/selenium"},{"name":"com.sun.xml.messaging.saaj:saaj-impl","old_version":"3.0.4","new_version":"3.0.5"},{"name":"org.slf4j:jul-to-slf4j","old_version":"2.0.17","new_version":"2.0.18"},{"name":"org.junit.jupiter:junit-jupiter","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"com.github.weisj:jsvg","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/weisJ/jsvg"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"io.freefair.lombok","old_version":"9.2.0","new_version":"9.5.0","repository_url":"https://github.com/freefair/gradle-plugins"},{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| commons-io:commons-io | `2.21.0` | `2.22.0` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.21.2` | `2.21.3` |\n| org.flywaydb:flyway-core | `12.3.0` | `12.6.1` |\n| org.flywaydb:flyway-database-hsqldb | `12.3.0` | `12.6.1` |\n| [org.xerial:sqlite-jdbc](https://github.com/xerial/sqlite-jdbc) | `3.51.3.0` | `3.53.1.0` |\n| [org.graalvm.js:js-community](https://github.com/oracle/graal) | `25.0.2` | `25.0.3` |\n| [org.graalvm.js:js-scriptengine](https://github.com/graalvm/graaljs) | `25.0.2` | `25.0.3` |\n| [com.graphql-java:graphql-java](https://github.com/graphql-java/graphql-java) | `25.0` | `26.0` |\n| [org.apache.groovy:groovy-all](https://github.com/apache/groovy) | `5.0.5` | `5.0.6` |\n| [io.grpc:grpc-protobuf](https://github.com/grpc/grpc-java) | `1.80.0` | `1.81.0` |\n| [com.drewnoakes:metadata-extractor](https://github.com/drewnoakes/metadata-extractor) | `2.19.0` | `2.20.0` |\n| [dev.langchain4j:langchain4j](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-azure-open-ai](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-ollama](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-open-ai](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [dev.langchain4j:langchain4j-google-ai-gemini](https://github.com/langchain4j/langchain4j) | `1.12.2` | `1.15.0` |\n| [org.bouncycastle:bcmail-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.bouncycastle:bcpkix-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| io.swagger:swagger-compat-spec-parser | `1.0.75` | `1.0.76` |\n| [io.swagger.parser.v3:swagger-parser](https://github.com/swagger-api/swagger-parser) | `2.1.39` | `2.1.42` |\n| org.thymeleaf:thymeleaf | `3.1.3.RELEASE` | `3.1.5.RELEASE` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.7` | `4.0.8` |\n| [org.seleniumhq.selenium:selenium-java](https://github.com/SeleniumHQ/selenium) | `4.41.0` | `4.44.0` |\n| com.sun.xml.messaging.saaj:saaj-impl | `3.0.4` | `3.0.5` |\n| org.slf4j:jul-to-slf4j | `2.0.17` | `2.0.18` |\n| [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [com.github.weisj:jsvg](https://github.com/weisJ/jsvg) | `2.0.0` | `2.1.0` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [io.freefair.lombok](https://github.com/freefair/gradle-plugins) | `9.2.0` | `9.5.0` |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n\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 `commons-io:commons-io` from 2.21.0 to 2.22.0\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.21.2 to 2.21.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/374fbd08ee91a6c91626bae1d6497df21c89b541\"\u003e\u003ccode\u003e374fbd0\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.21.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7059df78cc36832349acad026169ff890f4c718c\"\u003e\u003ccode\u003e7059df7\u003c/code\u003e\u003c/a\u003e Prep for 2.21.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2fd60bdab3228f6b99dce81326d9fd7eaf587401\"\u003e\u003ccode\u003e2fd60bd\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/b82a3640491f66be2e56bef377b5002cd9d1567b\"\u003e\u003ccode\u003eb82a364\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/ef4e013e95fc64583b0a414711648a84fc50be46\"\u003e\u003ccode\u003eef4e013\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/536ae51c1db9dfbfc8dda697ccfd6545cf626d2b\"\u003e\u003ccode\u003e536ae51\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/536c5339035643fdca46ddd947f253afd072f764\"\u003e\u003ccode\u003e536c533\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/426b778e5ea490d164e572a63319c7cf2f362f2f\"\u003e\u003ccode\u003e426b778\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.18.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/a73cda9be3e57f29c53fea748f1f867eaa1457ab\"\u003e\u003ccode\u003ea73cda9\u003c/code\u003e\u003c/a\u003e Prep for 2.18.7 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/76b4a05087a9e42eb1b26f59d5b7028b0496da5e\"\u003e\u003ccode\u003e76b4a05\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.21.2...jackson-bom-2.21.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-core` from 12.3.0 to 12.6.1\n\nUpdates `org.flywaydb:flyway-database-hsqldb` from 12.3.0 to 12.6.1\n\nUpdates `org.flywaydb:flyway-database-hsqldb` from 12.3.0 to 12.6.1\n\nUpdates `org.xerial:sqlite-jdbc` from 3.51.3.0 to 3.53.1.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.1.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003esqlite\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to sqlite 3.53.1 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/8263322\"\u003e8263322\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔄️ Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erewrite amalgamation_version.sh for POSIX shell (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/52522d0\"\u003e52522d0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix android usage (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/7ef8e0f\"\u003e7ef8e0f\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 gummy-bears-api-24 to 0.14.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/a28d6ce\"\u003ea28d6ce\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gummy-bears-api-24 to 0.13.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/248e1e9\"\u003e248e1e9\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 org.jreleaser:jreleaser-maven-plugin (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/396fdf3\"\u003e396fdf3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.tngtech.archunit:archunit-junit5 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/458abe1\"\u003e458abe1\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\u003econditionally bootstrap SLF4J API JAR (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/bc7d223\"\u003ebc7d223\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emake JAVA_CLASSPATH configurable (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/5aa7426\"\u003e5aa7426\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, Michael Osipov\u003c/p\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\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\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/b01674f0bffc45b4c213dd873867e64b9194104b\"\u003e\u003ccode\u003eb01674f\u003c/code\u003e\u003c/a\u003e chore(release): 3.53.1.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/e6719db995a1fee385f0421cee1eaf78e3587013\"\u003e\u003ccode\u003ee6719db\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/826332265f8f1069faeb4a61761a8651efaefb0c\"\u003e\u003ccode\u003e8263322\u003c/code\u003e\u003c/a\u003e feat(sqlite): upgrade to sqlite 3.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/396fdf30d850ca78dad59bccaafae25c1e86998a\"\u003e\u003ccode\u003e396fdf3\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump org.jreleaser:jreleaser-maven-plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/bc7d22394987d5c84706c844f0b95c7856e3f294\"\u003e\u003ccode\u003ebc7d223\u003c/code\u003e\u003c/a\u003e build: conditionally bootstrap SLF4J API JAR\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/4cd221a72480a681f91f78f9d8a99372daf423ce\"\u003e\u003ccode\u003e4cd221a\u003c/code\u003e\u003c/a\u003e chore: remove execute bit on non-executable files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/5aa74267e6a01c071ec88d1882de8aeec0d8d22a\"\u003e\u003ccode\u003e5aa7426\u003c/code\u003e\u003c/a\u003e build: make JAVA_CLASSPATH configurable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/52522d02ee5cffa8f283054d8bf5a5165206caac\"\u003e\u003ccode\u003e52522d0\u003c/code\u003e\u003c/a\u003e refactor: rewrite amalgamation_version.sh for POSIX shell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/a28d6cef66da00f8559445dfacd9f34a871509d6\"\u003e\u003ccode\u003ea28d6ce\u003c/code\u003e\u003c/a\u003e build(deps): bump gummy-bears-api-24 to 0.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/458abe135cad6e20f00504418a09946c81c8dbd7\"\u003e\u003ccode\u003e458abe1\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump com.tngtech.archunit:archunit-junit5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/xerial/sqlite-jdbc/compare/3.51.3.0...3.53.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.graalvm.js:js-community` from 25.0.2 to 25.0.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/oracle/graal/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.graalvm.js:js-scriptengine` from 25.0.2 to 25.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oracle/graaljs/blob/vm-25.0.3/CHANGELOG.md\"\u003eorg.graalvm.js:js-scriptengine's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 25.0.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.22.0.\u003c/li\u003e\n\u003cli\u003eLimited Chrome inspector remote debugging to localhost.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 25.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2025 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 22.17.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-intl-duration-format\"\u003e\u003ccode\u003eIntl.DurationFormat\u003c/code\u003e\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.text-encoding\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.CONSTRAINED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-defer-import-eval\"\u003e\u003ccode\u003eimport defer\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eUpsert\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eEnabled source phase imports from WebAssembly modules (\u003ccode\u003eimport source mod from \u0026quot;./mod.wasm\u0026quot;\u003c/code\u003e) by default if the \u003ccode\u003ejs.webassembly\u003c/code\u003e option is enabled and the \u003ccode\u003ejs.source-phase-imports\u003c/code\u003e option is not explicitly set to \u003ccode\u003efalse\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.13.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-error\"\u003e\u003ccode\u003eError.isError\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-try\"\u003e\u003ccode\u003ePromise.try\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-atomics-microwait\"\u003e\u003ccode\u003eAtomics.pause\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003eUint8Array to/from base64 and hex\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-source-phase-imports\"\u003eSource Phase Imports\u003c/a\u003e proposal. It is available behind the experimental option (\u003ccode\u003e--js.source-phase-imports\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/esm-integration\"\u003eWebAssembly/ES Module Integration\u003c/a\u003e proposal, allowing \u003ccode\u003e.wasm\u003c/code\u003e modules to be loaded via \u003ccode\u003eimport\u003c/code\u003e statements.\u003c/li\u003e\n\u003cli\u003eImplemented basic Worker API (resembling the API available in \u003ccode\u003ed8\u003c/code\u003e). It is available behind the experimental option \u003ccode\u003e--js.worker\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdded option \u003ccode\u003ejs.stack-trace-api\u003c/code\u003e that enables/disables \u003ccode\u003eError.captureStackTrace\u003c/code\u003e, \u003ccode\u003eError.prepareStackTrace\u003c/code\u003e and \u003ccode\u003eError.stackTraceLimit\u003c/code\u003e. These non-standard extensions are disabled by default (unless \u003ccode\u003ejs.v8-compat\u003c/code\u003e or \u003ccode\u003ejs.nashorn-compat\u003c/code\u003e is used).\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.webassembly\u003c/code\u003e stable.\u003c/li\u003e\n\u003cli\u003eMade options \u003ccode\u003ejs.load\u003c/code\u003e, \u003ccode\u003ejs.print\u003c/code\u003e, and \u003ccode\u003ejs.graal-builtin\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.locale\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e. Its value, if non-empty, must be a well-formed Unicode BCP 47 locale identifier and is now validated.\u003c/li\u003e\n\u003cli\u003eAdded an experimental \u003ccode\u003ejava.util.concurrent.Executor\u003c/code\u003e that can be used to post tasks into the event loop thread in \u003ccode\u003egraal-nodejs\u003c/code\u003e. It is available as \u003ccode\u003erequire('node:graal').eventLoopExecutor\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ccode\u003eTextDecoder\u003c/code\u003e and \u003ccode\u003eTextEncoder\u003c/code\u003e APIs of the \u003ca href=\"https://encoding.spec.whatwg.org/\"\u003eWHATWG Encoding Standard\u003c/a\u003e. They are available behind the experimental option (\u003ccode\u003e--js.text-encoding\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regex-escaping\"\u003e\u003ccode\u003eRegExp.escape\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regexp-modifiers\"\u003eRegular Expression Pattern Modifiers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003eIterator Sequencing\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.1.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2024 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-redeclarable-global-eval-vars\"\u003eMake eval-introduced global vars redeclarable\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-float16array\"\u003eFloat16Array\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-array-from-async\"\u003eArray.fromAsync\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-resizablearraybuffer\"\u003eResizable and Growable ArrayBuffers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 20.13.1.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.esm-eval-returns-exports\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/threads\"\u003eWebAssembly threads\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-with-resolvers\"\u003ePromise.withResolvers\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplementation of \u003ca href=\"https://github.com/tc39/proposal-async-iterator-helpers\"\u003eAsync Iterator Helpers\u003c/a\u003e proposal (that was split out from Iterator Helpers proposal) was moved behind the experimental option \u003ccode\u003e--js.async-iterator-helpers\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-usv-string\"\u003eWell-Formed Unicode Strings\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-json-parse-with-source\"\u003eJSON.parse source text access\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 18.18.2.\u003c/li\u003e\n\u003cli\u003eWebAssembly support in Node.js has been enabled by default. It can be disabled using the experimental option \u003ccode\u003e--js.webassembly=false\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/eba5be12437ddf85b56b6d50180ce93e6769f72b\"\u003e\u003ccode\u003eeba5be1\u003c/code\u003e\u003c/a\u003e release GraalVM 25.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/8df2eb01cb3db4a30762d4bf42d206048f251242\"\u003e\u003ccode\u003e8df2eb0\u003c/code\u003e\u003c/a\u003e [GR-74224] Backport to 25.0: Restrict Chrome Inspector to localhost.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/af7f1c39a9e4ec97b7566467751eac01a2052e5e\"\u003e\u003ccode\u003eaf7f1c3\u003c/code\u003e\u003c/a\u003e [GR-73523] Backport to 25.0: Fix PE bailout in eval().\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/768265bdcffb8e3f68f76fc072b286263daff706\"\u003e\u003ccode\u003e768265b\u003c/code\u003e\u003c/a\u003e Run basic smoke tests in the gate.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/3a36e8d60d2662fe0f940a5e95b100bd262225c0\"\u003e\u003ccode\u003e3a36e8d\u003c/code\u003e\u003c/a\u003e Restrict Chrome Inspector to localhost\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/131723667b91e4a6d4a454775768332c4d2996d7\"\u003e\u003ccode\u003e1317236\u003c/code\u003e\u003c/a\u003e Add regression test for eval() compilation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/f4583082cb7e3214bcc348d8826f2f78e95952ba\"\u003e\u003ccode\u003ef458308\u003c/code\u003e\u003c/a\u003e ScriptNode.runEval should create function object behind a TruffleBoundary.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/45949a471dc38a93dc07db5b3ce9a3f15dc1e95a\"\u003e\u003ccode\u003e45949a4\u003c/code\u003e\u003c/a\u003e [GR-72571] Backport to 25.0: Transient aux-engine-cache test failure.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/6e789095b2500bc40245b393ff29a56b790dfc1b\"\u003e\u003ccode\u003e6e78909\u003c/code\u003e\u003c/a\u003e Work around transient aux-engine-cache test failure due to speculative optimi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/bae1c8504b284238aa1f3140abddbb2592d7b82a\"\u003e\u003ccode\u003ebae1c85\u003c/code\u003e\u003c/a\u003e [GR-72939] Backport to 25.0.3: Upgrading Node.js version used by graal-nodejs...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graalvm/graaljs/compare/vm-25.0.2...vm-25.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.graalvm.js:js-scriptengine` from 25.0.2 to 25.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oracle/graaljs/blob/vm-25.0.3/CHANGELOG.md\"\u003eorg.graalvm.js:js-scriptengine's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 25.0.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.22.0.\u003c/li\u003e\n\u003cli\u003eLimited Chrome inspector remote debugging to localhost.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 25.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2025 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 22.17.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-intl-duration-format\"\u003e\u003ccode\u003eIntl.DurationFormat\u003c/code\u003e\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.text-encoding\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.CONSTRAINED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-defer-import-eval\"\u003e\u003ccode\u003eimport defer\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eUpsert\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eEnabled source phase imports from WebAssembly modules (\u003ccode\u003eimport source mod from \u0026quot;./mod.wasm\u0026quot;\u003c/code\u003e) by default if the \u003ccode\u003ejs.webassembly\u003c/code\u003e option is enabled and the \u003ccode\u003ejs.source-phase-imports\u003c/code\u003e option is not explicitly set to \u003ccode\u003efalse\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Node.js to version 22.13.1.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-error\"\u003e\u003ccode\u003eError.isError\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-try\"\u003e\u003ccode\u003ePromise.try\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-atomics-microwait\"\u003e\u003ccode\u003eAtomics.pause\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003eUint8Array to/from base64 and hex\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-source-phase-imports\"\u003eSource Phase Imports\u003c/a\u003e proposal. It is available behind the experimental option (\u003ccode\u003e--js.source-phase-imports\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/esm-integration\"\u003eWebAssembly/ES Module Integration\u003c/a\u003e proposal, allowing \u003ccode\u003e.wasm\u003c/code\u003e modules to be loaded via \u003ccode\u003eimport\u003c/code\u003e statements.\u003c/li\u003e\n\u003cli\u003eImplemented basic Worker API (resembling the API available in \u003ccode\u003ed8\u003c/code\u003e). It is available behind the experimental option \u003ccode\u003e--js.worker\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdded option \u003ccode\u003ejs.stack-trace-api\u003c/code\u003e that enables/disables \u003ccode\u003eError.captureStackTrace\u003c/code\u003e, \u003ccode\u003eError.prepareStackTrace\u003c/code\u003e and \u003ccode\u003eError.stackTraceLimit\u003c/code\u003e. These non-standard extensions are disabled by default (unless \u003ccode\u003ejs.v8-compat\u003c/code\u003e or \u003ccode\u003ejs.nashorn-compat\u003c/code\u003e is used).\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.webassembly\u003c/code\u003e stable.\u003c/li\u003e\n\u003cli\u003eMade options \u003ccode\u003ejs.load\u003c/code\u003e, \u003ccode\u003ejs.print\u003c/code\u003e, and \u003ccode\u003ejs.graal-builtin\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.locale\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e. Its value, if non-empty, must be a well-formed Unicode BCP 47 locale identifier and is now validated.\u003c/li\u003e\n\u003cli\u003eAdded an experimental \u003ccode\u003ejava.util.concurrent.Executor\u003c/code\u003e that can be used to post tasks into the event loop thread in \u003ccode\u003egraal-nodejs\u003c/code\u003e. It is available as \u003ccode\u003erequire('node:graal').eventLoopExecutor\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ccode\u003eTextDecoder\u003c/code\u003e and \u003ccode\u003eTextEncoder\u003c/code\u003e APIs of the \u003ca href=\"https://encoding.spec.whatwg.org/\"\u003eWHATWG Encoding Standard\u003c/a\u003e. They are available behind the experimental option (\u003ccode\u003e--js.text-encoding\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regex-escaping\"\u003e\u003ccode\u003eRegExp.escape\u003c/code\u003e\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-regexp-modifiers\"\u003eRegular Expression Pattern Modifiers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003eIterator Sequencing\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.1.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eECMAScript 2024 mode/features enabled by default.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-redeclarable-global-eval-vars\"\u003eMake eval-introduced global vars redeclarable\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-float16array\"\u003eFloat16Array\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-array-from-async\"\u003eArray.fromAsync\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-resizablearraybuffer\"\u003eResizable and Growable ArrayBuffers\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 20.13.1.\u003c/li\u003e\n\u003cli\u003eMade option \u003ccode\u003ejs.esm-eval-returns-exports\u003c/code\u003e stable and allowed in \u003ccode\u003eSandboxPolicy.UNTRUSTED\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 24.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/WebAssembly/threads\"\u003eWebAssembly threads\u003c/a\u003e proposal.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-promise-with-resolvers\"\u003ePromise.withResolvers\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplementation of \u003ca href=\"https://github.com/tc39/proposal-async-iterator-helpers\"\u003eAsync Iterator Helpers\u003c/a\u003e proposal (that was split out from Iterator Helpers proposal) was moved behind the experimental option \u003ccode\u003e--js.async-iterator-helpers\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-is-usv-string\"\u003eWell-Formed Unicode Strings\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eImplemented the \u003ca href=\"https://github.com/tc39/proposal-json-parse-with-source\"\u003eJSON.parse source text access\u003c/a\u003e proposal. It is available in ECMAScript staging mode (\u003ccode\u003e--js.ecmascript-version=staging\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated Node.js to version 18.18.2.\u003c/li\u003e\n\u003cli\u003eWebAssembly support in Node.js has been enabled by default. It can be disabled using the experimental option \u003ccode\u003e--js.webassembly=false\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/eba5be12437ddf85b56b6d50180ce93e6769f72b\"\u003e\u003ccode\u003eeba5be1\u003c/code\u003e\u003c/a\u003e release GraalVM 25.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/8df2eb01cb3db4a30762d4bf42d206048f251242\"\u003e\u003ccode\u003e8df2eb0\u003c/code\u003e\u003c/a\u003e [GR-74224] Backport to 25.0: Restrict Chrome Inspector to localhost.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/af7f1c39a9e4ec97b7566467751eac01a2052e5e\"\u003e\u003ccode\u003eaf7f1c3\u003c/code\u003e\u003c/a\u003e [GR-73523] Backport to 25.0: Fix PE bailout in eval().\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/768265bdcffb8e3f68f76fc072b286263daff706\"\u003e\u003ccode\u003e768265b\u003c/code\u003e\u003c/a\u003e Run basic smoke tests in the gate.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/3a36e8d60d2662fe0f940a5e95b100bd262225c0\"\u003e\u003ccode\u003e3a36e8d\u003c/code\u003e\u003c/a\u003e Restrict Chrome Inspector to localhost\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/131723667b91e4a6d4a454775768332c4d2996d7\"\u003e\u003ccode\u003e1317236\u003c/code\u003e\u003c/a\u003e Add regression test for eval() compilation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/f4583082cb7e3214bcc348d8826f2f78e95952ba\"\u003e\u003ccode\u003ef458308\u003c/code\u003e\u003c/a\u003e ScriptNode.runEval should create function object behind a TruffleBoundary.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/45949a471dc38a93dc07db5b3ce9a3f15dc1e95a\"\u003e\u003ccode\u003e45949a4\u003c/code\u003e\u003c/a\u003e [GR-72571] Backport to 25.0: Transient aux-engine-cache test failure.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/6e789095b2500bc40245b393ff29a56b790dfc1b\"\u003e\u003ccode\u003e6e78909\u003c/code\u003e\u003c/a\u003e Work around transient aux-engine-cache test failure due to speculative optimi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oracle/graaljs/commit/bae1c8504b284238aa1f3140abddbb2592d7b82a\"\u003e\u003ccode\u003ebae1c85\u003c/code\u003e\u003c/a\u003e [GR-72939] Backport to 25.0.3: Upgrading Node.js version used by graal-nodejs...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graalvm/graaljs/compare/vm-25.0.2...vm-25.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.graphql-java:graphql-java` from 25.0 to 26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-java/graphql-java/releases\"\u003ecom.graphql-java:graphql-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e26.0\u003c/h2\u003e\n\u003cp\u003eThis is the 26.0 release of graphql-java. Highlights are summarized below; the full list of merged PRs is at the end.\u003c/p\u003e\n\u003ch2\u003e⚠️ Breaking Changes\u003c/h2\u003e\n\u003ch3\u003eQuery complexity limits are now enforced by default\u003c/h3\u003e\n\u003cp\u003eNew \u003ccode\u003eQueryComplexityLimits\u003c/code\u003e validation checks \u003ccode\u003emaxDepth\u003c/code\u003e (default \u003cstrong\u003e100\u003c/strong\u003e) and \u003ccode\u003emaxFieldsCount\u003c/code\u003e (default \u003cstrong\u003e100,000\u003c/strong\u003e) as part of standard validation. Queries exceeding these limits will now fail with new \u003ccode\u003eMaxQueryDepthExceeded\u003c/code\u003e / \u003ccode\u003eMaxQueryFieldsExceeded\u003c/code\u003e validation errors.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet custom limits via \u003ccode\u003eGraphQLContext\u003c/code\u003e using \u003ccode\u003eQueryComplexityLimits.KEY\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eDisable entirely with \u003ccode\u003eQueryComplexityLimits.NONE\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIntroduced in \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4256\"\u003e#4256\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eValidation rule filtering API changed\u003c/h3\u003e\n\u003cp\u003eIn \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4228\"\u003e#4228\u003c/a\u003e the rule-filter predicate changed from \u003ccode\u003ePredicate\u0026lt;Class\u0026lt;?\u0026gt;\u0026gt;\u003c/code\u003e to \u003ccode\u003ePredicate\u0026lt;OperationValidationRule\u0026gt;\u003c/code\u003e in \u003ccode\u003eValidator.validateDocument(...)\u003c/code\u003e and \u003ccode\u003eParseAndValidate.parseAndValidate(...)\u003c/code\u003e. Callers that filtered by class (e.g. \u003ccode\u003erule -\u0026gt; rule != NoUnusedFragments.class\u003c/code\u003e) must migrate to the enum (\u003ccode\u003erule -\u0026gt; rule != OperationValidationRule.NO_UNUSED_FRAGMENTS\u003c/code\u003e). The \u003ccode\u003e@Internal\u003c/code\u003e classes \u003ccode\u003eAbstractRule\u003c/code\u003e and \u003ccode\u003eRulesVisitor\u003c/code\u003e were removed.\u003c/p\u003e\n\u003ch3\u003eBuilt-in directive handling consolidated (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4229\"\u003e#4229\u003c/a\u003e)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo\u003c/code\u003e was removed. Replace usages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo.isGraphqlSpecifiedDirective(...)\u003c/code\u003e → \u003ccode\u003eDirectives.isBuiltInDirective(...)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo.GRAPHQL_SPECIFICATION_DIRECTIVES\u003c/code\u003e → \u003ccode\u003eDirectives.BUILT_IN_DIRECTIVES\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDirectiveInfo.GRAPHQL_SPECIFICATION_DIRECTIVE_MAP\u003c/code\u003e → \u003ccode\u003eDirectives.BUILT_IN_DIRECTIVES_MAP\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eDirective ordering is now consistent: all 7 built-in directives appear first, followed by user-defined directives.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGraphQLSchema.Builder.clearDirectives()\u003c/code\u003e was initially removed then re-added in \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4276\"\u003e#4276\u003c/a\u003e with new semantics — it clears all \u003ccode\u003eadditionalDirectives\u003c/code\u003e, but built-in directives are always re-added automatically at build time.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOneOf inhabitability validation (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4248\"\u003e#4248\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eNew validator rejects OneOf input types that cannot be populated with a finite value (e.g. \u003ccode\u003einput A @oneOf { a: A }\u003c/code\u003e). Schemas that previously validated may now be rejected.\u003c/p\u003e\n\u003ch3\u003eNon-null field validation for code-built schemas (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4194\"\u003e#4194\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eCode-built schemas now perform the same deprecated-on-non-null field validation as SDL-built ones. Schemas relying on the gap may now fail validation.\u003c/p\u003e\n\u003ch3\u003e\u003ccode\u003eGraphQLSchema.getCodeRegistry()\u003c/code\u003e is no longer \u003ccode\u003e@Nullable\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4247\"\u003e#4247\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eThe return type was incorrectly annotated nullable. Callers may now drop redundant null checks; downstream nullness tooling will reflect the change.\u003c/p\u003e\n\u003ch3\u003eJSpecify nullability annotations rolled out broadly\u003c/h3\u003e\n\u003cp\u003eWaves 2 and 3 (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4184\"\u003e#4184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4274\"\u003e#4274\u003c/a\u003e) plus many individual PRs annotated hundreds of classes across \u003ccode\u003egraphql.analysis\u003c/code\u003e, \u003ccode\u003egraphql.execution\u003c/code\u003e, \u003ccode\u003egraphql.language\u003c/code\u003e, \u003ccode\u003egraphql.schema\u003c/code\u003e and others with \u003ccode\u003e@NullMarked\u003c/code\u003e/\u003ccode\u003e@NullUnmarked\u003c/code\u003e/\u003ccode\u003e@Nullable\u003c/code\u003e. Kotlin and other null-aware callers will now see stricter nullability contracts; code that relied on previously-permissive signatures may need adjustment.\u003c/p\u003e\n\u003ch2\u003e✨ New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eGraphQLSchema.FastBuilder\u003c/code\u003e\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4197\"\u003e#4197\u003c/a\u003e) — a more restrictive but \u003cstrong\u003e~5× faster\u003c/strong\u003e schema builder that reduces both time and memory for large schemas.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eQuery complexity limits\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4256\"\u003e#4256\u003c/a\u003e) — depth/field-count guardrails baked into validation (see breaking changes above for the enforcement side).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eQueryAppliedDirective\u003c/code\u003e on operations and documents\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4297\"\u003e#4297\u003c/a\u003e) — directives applied at the operation/document level are now exposed as \u003ccode\u003eQueryAppliedDirective\u003c/code\u003es.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNew instrumentation hook for post-exception-handling results\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4206\"\u003e#4206\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4207\"\u003e#4207\u003c/a\u003e) — observe the \u003ccode\u003eDataFetcherResult\u003c/code\u003e after \u003ccode\u003eDataFetcherExceptionHandler\u003c/code\u003e has mapped exceptions to errors. \u003ccode\u003eChainedInstrumentation\u003c/code\u003e delegates the new hook correctly.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eGeneric \u003ccode\u003eDataFetcherResult.newBuilder(T data)\u003c/code\u003e\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4254\"\u003e#4254\u003c/a\u003e) — removes the need for explicit type witnesses on the common \u003ccode\u003eDataFetcherResult.\u0026lt;T\u0026gt;newResult().data(x)...\u003c/code\u003e pattern.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRe-added \u003ccode\u003eGraphQLSchema.Builder.clearDirectives()\u003c/code\u003e\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4276\"\u003e#4276\u003c/a\u003e) — useful with \u003ccode\u003eGraphQLSchema.transform\u003c/code\u003e to rewrite non-built-in directives; built-ins are always re-added.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003etoString()\u003c/code\u003e on AST directives holders\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4195\"\u003e#4195\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e⚡ Performance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eIncremental \u003ccode\u003e@defer\u003c/code\u003e execution starts earlier\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4174\"\u003e#4174\u003c/a\u003e) — begins processing deferred payloads as soon as the first incremental call is detected instead of waiting for the initial result to complete.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eValidation consolidation\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4228\"\u003e#4228\u003c/a\u003e) — all operation validation rules run in a single \u003ccode\u003eOperationValidator\u003c/code\u003e pass, significantly cutting validation overhead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/86afa76971b94b7887c1c3b0e5afa996ef46805b\"\u003e\u003ccode\u003e86afa76\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/95f49d95945b34ca45e9e1cc23ce1368309632fc\"\u003e\u003ccode\u003e95f49d9\u003c/code\u003e\u003c/a\u003e Bump JaCoCo to 0.8.14 for Java 25 class file support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/3af0c5cc61331ade2787bb3a0891e19750357345\"\u003e\u003ccode\u003e3af0c5c\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/a6cc631e328d7d01ea261aa21d9225294adfd155\"\u003e\u003ccode\u003ea6cc631\u003c/code\u003e\u003c/a\u003e JSpecify big wave 3 (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4274\"\u003e#4274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/d26e4d61dfa90f092b36e0756bfae31655d17751\"\u003e\u003ccode\u003ed26e4d6\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/c86eb07d9d99be6f15e1caeb7958be109cdd6ef8\"\u003e\u003ccode\u003ec86eb07\u003c/code\u003e\u003c/a\u003e Add JSpecify annotations to 10 language package classes (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4219\"\u003e#4219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/b1543882a65b1af4207c0a0626b04ae797c3a2bb\"\u003e\u003ccode\u003eb154388\u003c/code\u003e\u003c/a\u003e Update test baseline [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/aafbbd54f0591cc1c34de9c7d8451aff09bb4b8f\"\u003e\u003ccode\u003eaafbbd5\u003c/code\u003e\u003c/a\u003e Add JSpecify annotations to 10 language package classes (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4218\"\u003e#4218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/3e15aed1209b59e71bedf8ad6e3e46ba5b28a177\"\u003e\u003ccode\u003e3e15aed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4359\"\u003e#4359\u003c/a\u003e from graphql-java/dependabot/github_actions/actions/...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-java/graphql-java/commit/e0ca0613e1c15a7a6c4d012e1ebba37e091ac682\"\u003e\u003ccode\u003ee0ca061\u003c/code\u003e\u003c/a\u003e Bump org.apache.groovy:groovy from 5.0.4 to 5.0.5 (\u003ca href=\"https://redirect.github.com/graphql-java/graphql-java/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graphql-java/graphql-java/compare/v25.0...v26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.groovy:groovy-all` from 5.0.5 to 5.0.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/apache/groovy/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-protobuf` from 1.80.0 to 1.81.0\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-protobuf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eV1.81.0\u003c/h2\u003e\n\u003cp\u003eIn this release we drop support for Android API level 22 or lower (Lollipop or earlier), following Google Play Service’s \u003ca href=\"https://developers.google.com/android/guides/setup\"\u003ediscontinued updates for Lollipop (API levels 21 \u0026amp; 22)\u003c/a\u003e and now requires a minimum of API level 23 (Android 6.0 Marshmallow).\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eAPI Changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Deprecate LoadBalancer.handleResolvedAddresses(). Developers maintaining custom LoadBalancer implementations should transition to using LoadBalancer.acceptResolvedAddresses(). Unlike the deprecated method, acceptResolvedAddresses() returns a Status object, allowing the load balancer to explicitly report success or reject the update if the provided addresses or configuration are invalid. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11623\"\u003e#11623\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBehavior Changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ecore: Enable dns \u0026quot;caching\u0026quot; on Android for 30 seconds to reduce CPU impact of a refresh loop with an LB policy (0675f70af). DnsNameResolver ignores re-resolution requests on OpenJDK-like platforms if it has been too soon since the last DNS query because InetAddress.getAllByName() has a cache with a fixed entry lifetime, but this logic was disabled for Android which does not have that style of cache. Android’s cache uses the result TTL, which will rarely be less than 30 seconds. This change would probably be most noticeable when 1) changing to a different network (e.g., from wifi to mobile), 2) the server has different addresses for different networks, and 3) the app is not using AndroidChannelBuilder with an \u003ccode\u003eandroid.context.Context\u003c/code\u003e. For reference, it seems Chrome caches for 1 minute\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug Fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eopentelemetry: Fix baggage propagation, the baggage propagation for opentelemetry introduced in \u003ca href=\"https://redirect.github.com/grpc/grpc-java/pull/12389\"\u003e#12389\u003c/a\u003e was broken. The context is decided once and used for all recording for the call, thus guaranteeing all record()s have consistent information.\u003c/li\u003e\n\u003cli\u003ecore: Address a race condition where \u003ccode\u003eManagedChannelOrphanWrapper\u003c/code\u003e could incorrectly log a \u0026quot;not shutdown properly\u0026quot; warning during garbage collection when using directExecutor(). (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12705\"\u003e#12705\u003c/a\u003e) (d459338d9)\u003c/li\u003e\n\u003cli\u003exds: Fix xDS HTTP CONNECT's transport socket name bug which is now corrected to use \u003ccode\u003etypeUrl\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12740\"\u003e#12740\u003c/a\u003e) (eac9fe961)\u003c/li\u003e\n\u003cli\u003exds: Fix an issue where subchannel metrics were dropping their association with the \u003ccode\u003ebackend_service\u003c/code\u003e. This ensures xDS load balancing metrics are reported accurately. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12735\"\u003e#12735\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNew Features\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Add tcp metrics, by implementing a few of the metrics defined in \u003ca href=\"https://redirect.github.com/grpc/proposal/pull/519\"\u003eA80\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eapi: Add a CallOption for a custom label on per-RPC metrics (0e39b2967). This CallOption is copied by grpc-opentelemetry to the \u003ccode\u003egrpc.client.call.custom\u003c/code\u003e label as defined by \u003ca href=\"https://github.com/grpc/proposal/blob/master/A108-otel-custom-per-call-label.md\"\u003egRFC A108\u003c/a\u003e. See also the \u003ca href=\"https://grpc.io/docs/guides/opentelemetry-metrics/\"\u003egRPC OpenTelemetry Metrics guide\u003c/a\u003e (update \u003ca href=\"https://redirect.github.com/grpc/grpc.io/pull/1505\"\u003ein-progress\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003exds: Add support for Weighted Round Robin (WRR) load balancing driven by custom backend metrics, implementing the behavior defined in gRFC A114. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12645\"\u003e#12645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eutils: Update \u003ccode\u003eAdvancedTlsX509KeyManager\u003c/code\u003e so that developers can now preserve and use key aliases when dynamically reloading TLS certificates. (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12686\"\u003e#12686\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate the \u0026quot;Outgoing Flow Control\u0026quot; section in the Manual Flow Control example to say onNext() does not block, but rather queues the messages in memory and advises developers to use CallStreamObserver.isReady() to prevent this memory exhaustion (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12700\"\u003e#12700\u003c/a\u003e) (a3a9ffcbe) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12726\"\u003e#12726\u003c/a\u003e) (65ae2efda)\u003c/li\u003e\n\u003cli\u003eexamples: Clean up Health example, and document need for grpc-services (3ed732fc0)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDependencies\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Dependencies (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12719\"\u003e#12719\u003c/a\u003e) (16e17abba). Google-auth-library: 1.42.1, animal-sniffer: 1.27, assertj-core:3.27.7, error_prone_annotations:2.48.0, proto-google-common-protos:2.64.1, google-cloud-logging:3.23.10, jetty-http2-server:12.1.7, jetty-ee10-servlet:12.1.7, lincheck:3.4, opentelemetry-api:1.60.1, opentelemetry-exporter-prometheus:1.60.1-alpha, opentelemetry-gcp-resources:1.54.0-alpha, opentelemetry-sdk-extension-autoconfigure:1.60.1, opentelemetry-sdk-testing:1.60.1, robolectric:4.16.1, tomcat-embed-core:10.1.52, tomcat-embed-core9: 9.0.115,\u003c/li\u003e\n\u003cli\u003eUpgrade Netty to 4.1.132 and netty-tcnative to 2.0.75 (1528f809c)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eThanks to\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/becomeStar\"\u003e\u003ccode\u003e@​becomeStar\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benjaminp\"\u003e\u003ccode\u003e@​benjaminp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JoeCqupt\"\u003e\u003ccode\u003e@​JoeCqupt\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kainsin\"\u003e\u003ccode\u003e@​Kainsin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/merlimat\"\u003e\u003ccode\u003e@​merlimat\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SreeramdasLavanya\"\u003e\u003ccode\u003e@​SreeramdasLavanya\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/themechbro\"\u003e\u003ccode\u003e@​themechbro\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhangweikop\"\u003e\u003ccode\u003e@​zhangweikop\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/6951542f66c59f63cbf5348b38a2306a3964adda\"\u003e\u003ccode\u003e6951542\u003c/code\u003e\u003c/a\u003e Bump version to 1.81.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e94188e81298c36ac9654dc76025940171abc0a4\"\u003e\u003ccode\u003ee94188e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.81.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/4813c6d06089d49a479f7f1786297dc3d8c0e549\"\u003e\u003ccode\u003e4813c6d\u003c/code\u003e\u003c/a\u003e core,xds: Fix backend_service plumbing for subchannel metrics (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12735\"\u003e#12735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/6737eb583a273dd13bf9e7b82cc1d9df75e551bd\"\u003e\u003ccode\u003e6737eb5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Replace javax ThreadSafe annotation with errorprone ThreadSafe (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/1274\"\u003e#1274\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ef3531325ba98fa043f6f7f16fa0715e9296d7a3\"\u003e\u003ccode\u003eef35313\u003c/code\u003e\u003c/a\u003e Replace javax ThreadSafe annotation with errorprone ThreadSafe (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12742\"\u003e#12742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/3ed732fc09c41b185cd03fdd6864c4ebb82f3a80\"\u003e\u003ccode\u003e3ed732f\u003c/code\u003e\u003c/a\u003e examples: Clean up Health, and document need for grpc-services\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/eac9fe9612881d54d51ddc5496599ba9a8201021\"\u003e\u003ccode\u003eeac9fe9\u003c/code\u003e\u003c/a\u003e xds: fix xDS HTTP CONNECT's transport socket name bug (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12740\"\u003e#12740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1528f809c9e506cf2e7052e3f41fd8b75636d3d3\"\u003e\u003ccode\u003e1528f80\u003c/code\u003e\u003c/a\u003e Upgrade Netty to 4.1.132 and netty-tcnative to 2.0.75\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/d057a7ebee2945fc0a9ca58b36afdb5b37a99680\"\u003e\u003ccode\u003ed057a7e\u003c/code\u003e\u003c/a\u003e [xds] Implement A114: WRR support for custom backend metrics (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12645\"\u003e#12645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/842636f88452c30769a5561f7659db6e4f9fc2a0\"\u003e\u003ccode\u003e842636f\u003c/code\u003e\u003c/a\u003e xds: Add configuration objects for ExtAuthz, GrpcService and Bootstrap change...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.80.0...v1.81.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.drewnoakes:metadata-extractor` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/drewnoakes/metadata-extractor/releases\"\u003ecom.drewnoakes:metadata-extractor's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.20.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify string creation by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/637\"\u003edrewnoakes/metadata-extractor#637\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCopy paste error fixed by \u003ca href=\"https://github.com/GRuppert\"\u003e\u003ccode\u003e@​GRuppert\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/641\"\u003edrewnoakes/metadata-extractor#641\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded code to parse OM System II makernote (uses Olympus II makernote) by \u003ca href=\"https://github.com/AndyDragon\"\u003e\u003ccode\u003e@​AndyDragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/642\"\u003edrewnoakes/metadata-extractor#642\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd HEIC/HEIF to README by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/645\"\u003edrewnoakes/metadata-extractor#645\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTrim trailing null bytes from some string values by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/647\"\u003edrewnoakes/metadata-extractor#647\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed parsing of illegal dates + handle known null value by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/650\"\u003edrewnoakes/metadata-extractor#650\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport AVIF / AV1 images by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/649\"\u003edrewnoakes/metadata-extractor#649\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven.yml fixed after branch rename by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/652\"\u003edrewnoakes/metadata-extractor#652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed wrong date/time when timezone is null by \u003ca href=\"https://github.com/StefanOltmann\"\u003e\u003ccode\u003e@​StefanOltmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/651\"\u003edrewnoakes/metadata-extractor#651\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate lengths before parsing JPEG data by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/653\"\u003edrewnoakes/metadata-extractor#653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Automatic-Module-Name by \u003ca href=\"https://github.com/tsmock\"\u003e\u003ccode\u003e@​tsmock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/621\"\u003edrewnoakes/metadata-extractor#621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PDF support to detectFileType by \u003ca href=\"https://github.com/max-peroch\"\u003e\u003ccode\u003e@​max-peroch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/665\"\u003edrewnoakes/metadata-extractor#665\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix of \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/issues/676\"\u003e#676\u003c/a\u003e by \u003ca href=\"https://github.com/ogawaffm\"\u003e\u003ccode\u003e@​ogawaffm\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/677\"\u003edrewnoakes/metadata-extractor#677\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIssue \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/issues/685\"\u003e#685\u003c/a\u003e | Fix StringIndexOutOfBoundsException in ICC DESC tag processing by \u003ca href=\"https://github.com/DAN-MU-ZI\"\u003e\u003ccode\u003e@​DAN-MU-ZI\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/687\"\u003edrewnoakes/metadata-extractor#687\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump Java version to 1.8 by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/696\"\u003edrewnoakes/metadata-extractor#696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix rounding error in shutter speed description by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/695\"\u003edrewnoakes/metadata-extractor#695\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend file type detection by \u003ca href=\"https://github.com/drewnoakes\"\u003e\u003ccode\u003e@​drewnoakes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/drewnoakes/metadata-extractor/pull/697\"\u003edrewnoakes/metadata-extractor#697\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIssue \u003ca h...\n\n_Description has been truncated_","html_url":"https://github.com/ricekot/zap-extensions/pull/60","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ricekot%2Fzap-extensions/issues/60","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/60/packages"}},{"old_version":"4.3.0.3225","new_version":"7.3.0.8198","update_type":"major","path":null,"pr_created_at":"2026-05-18T13:08:45.000Z","version_change":"4.3.0.3225 → 7.3.0.8198","issue":{"uuid":"4469368518","node_id":"PR_kwDONuKnIs7cqWDd","number":165,"state":"open","title":"build(deps): bump org.sonarqube from 4.3.0.3225 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-18T13:08:45.000Z","updated_at":"2026-05-18T13:09:16.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"4.3.0.3225","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 4.3.0.3225 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=4.3.0.3225\u0026new-version=7.3.0.8198)](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/baretto-labs/OllamAssist/pull/165","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/baretto-labs%2FOllamAssist/issues/165","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/165/packages"}},{"old_version":"7.2.2.6593","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-14T13:55:45.000Z","version_change":"7.2.2.6593 → 7.3.0.8198","issue":{"uuid":"4446480523","node_id":"PR_kwDOB_7c0M7bi09Y","number":3530,"state":"closed","title":"chore(deps): bump the java-minor-patch group across 1 directory with 36 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-15T07:55:31.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-14T13:55:45.000Z","updated_at":"2026-05-15T07:55:33.000Z","time_to_close":64786,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"java-minor-patch","update_count":36,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"org.eclipse.jetty:jetty-server","old_version":"12.1.8","new_version":"12.1.9"},{"name":"org.eclipse.jetty:jetty-http","old_version":"12.1.8","new_version":"12.1.9"},{"name":"org.eclipse.jetty:jetty-xml","old_version":"12.1.8","new_version":"12.1.9"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.7","new_version":"4.0.8"},{"name":"org.glassfish.jaxb:jaxb-xjc","old_version":"4.0.7","new_version":"4.0.8"},{"name":"org.springframework:spring-context","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.springframework:spring-web","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.springframework:spring-test","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.springframework:spring-jdbc","old_version":"7.0.6","new_version":"7.0.7","repository_url":"https://github.com/spring-projects/spring-framework"},{"name":"org.eclipse.microprofile.config:microprofile-config-api","old_version":"3.1","new_version":"3.1.1","repository_url":"https://github.com/eclipse/microprofile-config"},{"name":"io.smallrye.config:smallrye-config-core","old_version":"3.16.0","new_version":"3.17.2"},{"name":"io.smallrye.config:smallrye-config-source-yaml","old_version":"3.16.0","new_version":"3.17.2"},{"name":"io.github.openfeign:feign-hc5","old_version":"13.11","new_version":"13.12","repository_url":"https://github.com/openfeign/feign"},{"name":"io.github.openfeign:feign-jackson3","old_version":"13.11","new_version":"13.12","repository_url":"https://github.com/openfeign/feign"},{"name":"io.github.openfeign:feign-slf4j","old_version":"13.11","new_version":"13.12","repository_url":"https://github.com/openfeign/feign"},{"name":"com.codeborne:selenide","old_version":"7.15.0","new_version":"7.16.1","repository_url":"https://github.com/selenide/selenide"},{"name":"com.codeborne:selenide-grid","old_version":"7.15.0","new_version":"7.16.1","repository_url":"https://github.com/selenide/selenide"},{"name":"io.qameta.allure:allure-selenide","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure-java"},{"name":"io.qameta.allure:allure-cucumber7-jvm","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure-java"},{"name":"io.qameta.allure:allure-junit-platform","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure-java"},{"name":"io.qameta.allure:allure-commandline","old_version":"2.33.0","new_version":"2.34.0","repository_url":"https://github.com/allure-framework/allure2"},{"name":"org.testcontainers:testcontainers","old_version":"2.0.4","new_version":"2.0.5","repository_url":"https://github.com/testcontainers/testcontainers-java"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.1","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.apache.commons:commons-configuration2","old_version":"2.13.0","new_version":"2.14.0"},{"name":"org.apache.httpcomponents.client5:httpclient5","old_version":"5.6","new_version":"5.6.1","repository_url":"https://github.com/apache/httpcomponents-client"},{"name":"commons-codec:commons-codec","old_version":"1.21.0","new_version":"1.22.0","repository_url":"https://github.com/apache/commons-codec"},{"name":"commons-io:commons-io","old_version":"2.21.0","new_version":"2.22.0"},{"name":"io.swagger.parser.v3:swagger-parser","old_version":"2.1.39","new_version":"2.1.41","repository_url":"https://github.com/swagger-api/swagger-parser"},{"name":"io.swagger.parser.v3:swagger-parser-v3","old_version":"2.1.39","new_version":"2.1.41"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"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":"io.swagger.core.v3:swagger-annotations","old_version":"2.2.45","new_version":"2.2.49"},{"name":"com.sun.xml.messaging.saaj:saaj-impl","old_version":"3.0.4","new_version":"3.0.5"},{"name":"org.openapi.generator","old_version":"7.21.0","new_version":"7.22.0"},{"name":"org.sonarqube","old_version":"7.2.2.6593","new_version":"7.3.0.8198"}],"path":null,"ecosystem":"maven"},"body":"Bumps the java-minor-patch group with 36 updates in the /src directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n| org.eclipse.jetty:jetty-server | `12.1.8` | `12.1.9` |\n| org.eclipse.jetty:jetty-http | `12.1.8` | `12.1.9` |\n| org.eclipse.jetty:jetty-xml | `12.1.8` | `12.1.9` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.7` | `4.0.8` |\n| org.glassfish.jaxb:jaxb-xjc | `4.0.7` | `4.0.8` |\n| [org.springframework:spring-context](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.springframework:spring-web](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.springframework:spring-test](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.springframework:spring-jdbc](https://github.com/spring-projects/spring-framework) | `7.0.6` | `7.0.7` |\n| [org.eclipse.microprofile.config:microprofile-config-api](https://github.com/eclipse/microprofile-config) | `3.1` | `3.1.1` |\n| io.smallrye.config:smallrye-config-core | `3.16.0` | `3.17.2` |\n| io.smallrye.config:smallrye-config-source-yaml | `3.16.0` | `3.17.2` |\n| [io.github.openfeign:feign-hc5](https://github.com/openfeign/feign) | `13.11` | `13.12` |\n| [io.github.openfeign:feign-jackson3](https://github.com/openfeign/feign) | `13.11` | `13.12` |\n| [io.github.openfeign:feign-slf4j](https://github.com/openfeign/feign) | `13.11` | `13.12` |\n| [com.codeborne:selenide](https://github.com/selenide/selenide) | `7.15.0` | `7.16.1` |\n| [com.codeborne:selenide-grid](https://github.com/selenide/selenide) | `7.15.0` | `7.16.1` |\n| [io.qameta.allure:allure-selenide](https://github.com/allure-framework/allure-java) | `2.33.0` | `2.34.0` |\n| [io.qameta.allure:allure-cucumber7-jvm](https://github.com/allure-framework/allure-java) | `2.33.0` | `2.34.0` |\n| [io.qameta.allure:allure-junit-platform](https://github.com/allure-framework/allure-java) | `2.33.0` | `2.34.0` |\n| [io.qameta.allure:allure-commandline](https://github.com/allure-framework/allure2) | `2.33.0` | `2.34.0` |\n| [org.testcontainers:testcontainers](https://github.com/testcontainers/testcontainers-java) | `2.0.4` | `2.0.5` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.1` | `3.1.3` |\n| org.apache.commons:commons-configuration2 | `2.13.0` | `2.14.0` |\n| [org.apache.httpcomponents.client5:httpclient5](https://github.com/apache/httpcomponents-client) | `5.6` | `5.6.1` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.21.0` | `1.22.0` |\n| commons-io:commons-io | `2.21.0` | `2.22.0` |\n| [io.swagger.parser.v3:swagger-parser](https://github.com/swagger-api/swagger-parser) | `2.1.39` | `2.1.41` |\n| io.swagger.parser.v3:swagger-parser-v3 | `2.1.39` | `2.1.41` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.5.0-jre` | `33.6.0-jre` |\n| io.swagger.core.v3:swagger-annotations | `2.2.45` | `2.2.49` |\n| com.sun.xml.messaging.saaj:saaj-impl | `3.0.4` | `3.0.5` |\n| org.openapi.generator | `7.21.0` | `7.22.0` |\n| org.sonarqube | `7.2.2.6593` | `7.3.0.8198` |\n\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\nUpdates `org.eclipse.jetty:jetty-server` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-http` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-xml` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-http` from 12.1.8 to 12.1.9\n\nUpdates `org.eclipse.jetty:jetty-xml` from 12.1.8 to 12.1.9\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.7 to 4.0.8\n\nUpdates `org.glassfish.jaxb:jaxb-xjc` from 4.0.7 to 4.0.8\n\nUpdates `org.glassfish.jaxb:jaxb-xjc` from 4.0.7 to 4.0.8\n\nUpdates `org.springframework:spring-context` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-context's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-web` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-web's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-test` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-jdbc` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-web` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-web's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36507\"\u003e#36507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultJmsListenerContainer\u003c/code\u003e may hang in an endless loop in \u003ccode\u003edoShutdown\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36506\"\u003e#36506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eQuery not hidden in DefaultClientResponse checkpoint \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36502\"\u003e#36502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRestClient closes stream for ResponseEntity\u003c!-- raw HTML omitted --\u003e responses \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36492\"\u003e#36492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIllegalStateException when using websocket handshake headers with Tomcat \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36486\"\u003e#36486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid nullness information for ParameterizedTypeReference \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36477\"\u003e#36477\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebTestClient cannot assert null list elements \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36476\"\u003e#36476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle Kotlin nullable value class param correctly in \u003ccode\u003eCoroutineUtils\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36449\"\u003e#36449\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove RFC 2047 encoding from Content-Disposition filename \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36328\"\u003e#36328\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\u003eClarify semantics of HttpMethod.valueOf() \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36652\"\u003e#36652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument whitespace semantics in SpEL expressions \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36628\"\u003e#36628\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-framework/commit/c997d4018d3dc6a7dde2e20eae3627599a01e169\"\u003e\u003ccode\u003ec997d40\u003c/code\u003e\u003c/a\u003e Release v7.0.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/91852546d92aeeae933ad77f8c938d4cfd9b0305\"\u003e\u003ccode\u003e9185254\u003c/code\u003e\u003c/a\u003e Upgrade to Reactor 2025.0.5 and Micrometer 1.16.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/802fa4d65e1f99c948a59629d4adcb4e3603e2cf\"\u003e\u003ccode\u003e802fa4d\u003c/code\u003e\u003c/a\u003e Refine RetryListener example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/7052da453285658215efc1dd5ecb0d472fde2de1\"\u003e\u003ccode\u003e7052da4\u003c/code\u003e\u003c/a\u003e Add doOnDiscard in MultipartHttpMessageReader\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/63817ce2021172338ce7900703678bfaee186a0a\"\u003e\u003ccode\u003e63817ce\u003c/code\u003e\u003c/a\u003e Add missing tests for WebRequestDataBinder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/61bd79017f7c4c3a4fafbb0da061376204593a68\"\u003e\u003ccode\u003e61bd790\u003c/code\u003e\u003c/a\u003e Polish WebRequestDataBinderTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/ab6637c67024facf521e8f82c4bcb076308925a6\"\u003e\u003ccode\u003eab6637c\u003c/code\u003e\u003c/a\u003e Completely extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/c9b88b4ebd47c7616816602204b106dd2c1275ef\"\u003e\u003ccode\u003ec9b88b4\u003c/code\u003e\u003c/a\u003e Extract ServletRequestParameterPropertyValuesTests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/68c575ab14057e04dba86beae64167bbfe3ac9fe\"\u003e\u003ccode\u003e68c575a\u003c/code\u003e\u003c/a\u003e Revise \u0026quot;Skip binding entirely when field is not allowed\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-framework/commit/cb320468dbc88f07b72d8a949b525c5ab911bd74\"\u003e\u003ccode\u003ecb32046\u003c/code\u003e\u003c/a\u003e Further clarify semantics of HttpMethod.valueOf()\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-framework/compare/v7.0.6...v7.0.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework:spring-test` from 7.0.6 to 7.0.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-framework/releases\"\u003eorg.springframework:spring-test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.0.7\u003c/h2\u003e\n\u003ch2\u003e:star: New Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eSpringValidatorAdapter\u003c/code\u003e and \u003ccode\u003eMethodValidationAdapter\u003c/code\u003e performance \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36621\"\u003e#36621\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport JSON array decoding to \u003ccode\u003eFlux\u003c/code\u003e in \u003ccode\u003eKotlinSerializationJsonDecoder\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36597\"\u003e#36597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDeprecate \u003ccode\u003emethodIdentification()\u003c/code\u003e in \u003ccode\u003eCacheAspectSupport\u003c/code\u003e for removal \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36575\"\u003e#36575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd MockRestServiceServer#createServer variant for RestClient \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36572\"\u003e#36572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate RestClientXhrTransport variant replacing RestTemplateXhrTransport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36566\"\u003e#36566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove error handling in multipart codecs \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36563\"\u003e#36563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003eApplicationListenerMethodAdapter#getTargetMethod()\u003c/code\u003e public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36558\"\u003e#36558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApiVersionConfigurer.setSupportedVersionPredicate() returns void instead of ApiVersionConfigurer \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36551\"\u003e#36551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not work well with Hibernate's multi-tenancy by schema strategy \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36527\"\u003e#36527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd registerManagedResource variant with bean key argument to MBeanExporter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36520\"\u003e#36520\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle blank Accept-Language header in AcceptHeaderLocaleResolver \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36513\"\u003e#36513\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake AbstractStreamingClientHttpRequest and AbstractBufferingClientHttpRequest public \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36501\"\u003e#36501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySQL Error 149 (Galera/WSREP conflict) not translated to ConcurrencyFailureException in Spring JDBC/ORM \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36499\"\u003e#36499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd PreFlightRequestFilter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36482\"\u003e#36482\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport configuration of extension context scope for \u003ccode\u003eSpringExtension\u003c/code\u003e via Spring or JUnit properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36460\"\u003e#36460\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower log level of \u0026quot;Cache miss for REQUEST dispatch\u0026quot; in HandlerMappingIntrospector \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36309\"\u003e#36309\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWebDataBinder unnecessarily instantiates collections when using the \u0026quot;!\u0026quot; and \u0026quot;_\u0026quot; prefixes \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36625\"\u003e#36625\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache pollution from high-cardinality FieldError default messages in MessageSourceSupport \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36609\"\u003e#36609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation\u003c/code\u003e does not use \u003ccode\u003eClassLoader\u003c/code\u003e for method or field \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36606\"\u003e#36606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@Sql\u003c/code\u003e fails if \u003ccode\u003eDataSource\u003c/code\u003e is wrapped in a \u003ccode\u003eTransactionAwareDataSourceProxy\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36611\"\u003e#36611\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotatedTypeMetadata\u003c/code\u003e no longer retains source declaration order on Java 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36598\"\u003e#36598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMergedAnnotation.asMap()\u003c/code\u003e fails when an attribute references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36586\"\u003e#36586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eFileSystemResource\u003c/code\u003e does not strictly follow the \u003ccode\u003eResource#isReadable()\u003c/code\u003e contract \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36584\"\u003e#36584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConverter overrides in HttpMessageConverters only apply when defaults are registered \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36579\"\u003e#36579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInvalid method return type metadata for ClassFile variant on JDK 24+ \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36577\"\u003e#36577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Writer lifecycle for \u003ccode\u003eAbstractJsonHttpMessageConverter.writeInternal(Object, Type, Writer)\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36565\"\u003e#36565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlushing-related regression in \u003ccode\u003eSseServerResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36537\"\u003e#36537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLazyConnectionDataSourceProxy does not pass on holdability to target Connection \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36528\"\u003e#36528\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnnotationBeanNameGenerator\u003c/code\u003e fails when an annotation references a non-existent class \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/issues/36524\"\u003e#36524\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerserve default API version in RestClientAdapter \u003ca href=\"https://redirect.github.com/spring-projects/spring-framework/pull/36514\"\u003e#36514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInconsistent codings resolution in resource resolvers \u003ca href=\"https://redirect.gith...\n\n_Description has been truncated_","html_url":"https://github.com/nordic-institute/X-Road/pull/3530","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nordic-institute%2FX-Road/issues/3530","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3530/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-11T21:48:58.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4424534908","node_id":"PR_kwDORXH8Es7acBTF","number":54,"state":"open","title":"build(deps): bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T21:48:58.000Z","updated_at":"2026-05-11T21:49:30.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/RajibAlam43/e-learning/pull/54","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RajibAlam43%2Fe-learning/issues/54","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/54/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-11T00:23:44.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4417265113","node_id":"PR_kwDOGbiom87aEXWn","number":156,"state":"open","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":["yvasyliev"],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T00:23:44.000Z","updated_at":"2026-05-11T00:26:07.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/yvasyliev/dz4j/pull/156","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yvasyliev%2Fdz4j/issues/156","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/156/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":"the gradle group","pr_created_at":"2026-05-07T21:16:05.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4402074714","node_id":"PR_kwDOEaQNRs7ZT7wv","number":580,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198 in the gradle group","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-08T21:13:00.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-07T21:16:05.000Z","updated_at":"2026-05-08T21:13:02.000Z","time_to_close":86215,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":"the gradle group","ecosystem":"maven"},"body":"Bumps the gradle group with 1 update: org.sonarqube.\n\nUpdates `org.sonarqube` from 7.2.3.7755 to 7.3.0.8198\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/navikt/omsorgspenger-sak/pull/580","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/navikt%2Fomsorgspenger-sak/issues/580","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/580/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-05T00:25:00.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4380595839","node_id":"PR_kwDOMC95A87YNyhw","number":89,"state":"closed","title":"build(deps): bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-05T00:25:13.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-05T00:25:00.000Z","updated_at":"2026-05-05T00:27:29.000Z","time_to_close":13,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/tacascer-org/hanab-infer/pull/89","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/tacascer-org%2Fhanab-infer/issues/89","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/89/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-04T23:05:52.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4380259807","node_id":"PR_kwDOGLWB1s7YMrqG","number":375,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-04T23:07:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T23:05:52.000Z","updated_at":"2026-05-04T23:08:05.000Z","time_to_close":125,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/josephrodriguez/springboot-starterkit/pull/375","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/josephrodriguez%2Fspringboot-starterkit/issues/375","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/375/packages"}},{"old_version":"6.0.1.5171","new_version":"7.3.0.8198","update_type":"major","path":null,"pr_created_at":"2026-05-04T20:21:42.000Z","version_change":"6.0.1.5171 → 7.3.0.8198","issue":{"uuid":"4379409600","node_id":"PR_kwDOSTvtzc7YJ3eb","number":11,"state":"open","title":"build(deps): bump org.sonarqube from 6.0.1.5171 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-04T20:21:42.000Z","updated_at":"2026-05-05T21:58:32.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"org.sonarqube","old_version":"6.0.1.5171","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 6.0.1.5171 to 7.3.0.8198.\n","html_url":"https://github.com/georgeci/MoneySurfer/pull/11","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/georgeci%2FMoneySurfer/issues/11","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/11/packages"}},{"old_version":"6.3.1.5724","new_version":"7.3.0.8198","update_type":"major","path":null,"pr_created_at":"2026-05-04T06:09:01.000Z","version_change":"6.3.1.5724 → 7.3.0.8198","issue":{"uuid":"4374356822","node_id":"PR_kwDOCzfvNs7X5KKt","number":790,"state":"closed","title":"Bump org.sonarqube from 6.3.1.5724 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java","develop"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-08T05:43:10.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T06:09:01.000Z","updated_at":"2026-06-08T05:43:12.000Z","time_to_close":3022449,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"6.3.1.5724","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 6.3.1.5724 to 7.3.0.8198.\n","html_url":"https://github.com/adaptris/interlok-artemis/pull/790","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptris%2Finterlok-artemis/issues/790","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/790/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-04T05:47:09.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4374265827","node_id":"PR_kwDOOO44CM7X43I-","number":168,"state":"closed","title":"Bump the minor-and-patch group across 1 directory with 35 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T05:55:07.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T05:47:09.000Z","updated_at":"2026-05-11T05:55:09.000Z","time_to_close":605278,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-and-patch","update_count":35,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"io.ktor:ktor-server-core","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-rate-limit","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":"io.ktor:ktor-server-content-negotiation","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-metrics","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-call-logging","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-compression","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-openapi","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-swagger","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-auth","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-auth-jwt","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-netty","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-cio","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-client-auth","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-metrics-micrometer","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-mock","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-config-yaml","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-server-test-host","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor.plugin","old_version":"3.4.2","new_version":"3.4.3"},{"name":"org.postgresql:postgresql","old_version":"42.7.10","new_version":"42.7.11","repository_url":"https://github.com/pgjdbc/pgjdbc"},{"name":"io.micrometer:micrometer-registry-prometheus","old_version":"1.16.4","new_version":"1.16.5","repository_url":"https://github.com/micrometer-metrics/micrometer"},{"name":"io.micrometer:micrometer-core","old_version":"1.16.4","new_version":"1.16.5","repository_url":"https://github.com/micrometer-metrics/micrometer"},{"name":"org.jetbrains.kotlin:kotlin-test-junit","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.flywaydb:flyway-core","old_version":"12.3.0","new_version":"12.5.0"},{"name":"org.flywaydb:flyway-database-postgresql","old_version":"12.3.0","new_version":"12.5.0"},{"name":"no.nav.security:token-validation-ktor-v3","old_version":"6.0.4","new_version":"6.0.6","repository_url":"https://github.com/navikt/token-support"},{"name":"com.google.cloud:google-cloud-bigquery","old_version":"2.62.0","new_version":"2.65.0","repository_url":"https://github.com/googleapis/google-cloud-java"},{"name":"com.google.cloud:libraries-bom","old_version":"26.79.0","new_version":"26.80.0","repository_url":"https://github.com/googleapis/java-cloud-bom"},{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"}],"path":null,"ecosystem":"maven"},"body":"Bumps the minor-and-patch group with 35 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n| [io.ktor:ktor-server-core](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-rate-limit](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| [io.ktor:ktor-server-content-negotiation](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-metrics](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-call-logging](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-compression](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-openapi](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-swagger](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-auth](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-auth-jwt](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-netty](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-cio](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-client-auth](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-metrics-micrometer](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-mock](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-config-yaml](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-server-test-host](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| io.ktor.plugin | `3.4.2` | `3.4.3` |\n| [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) | `42.7.10` | `42.7.11` |\n| [io.micrometer:micrometer-registry-prometheus](https://github.com/micrometer-metrics/micrometer) | `1.16.4` | `1.16.5` |\n| [io.micrometer:micrometer-core](https://github.com/micrometer-metrics/micrometer) | `1.16.4` | `1.16.5` |\n| [org.jetbrains.kotlin:kotlin-test-junit](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| org.flywaydb:flyway-core | `12.3.0` | `12.5.0` |\n| org.flywaydb:flyway-database-postgresql | `12.3.0` | `12.5.0` |\n| [no.nav.security:token-validation-ktor-v3](https://github.com/navikt/token-support) | `6.0.4` | `6.0.6` |\n| [com.google.cloud:google-cloud-bigquery](https://github.com/googleapis/google-cloud-java) | `2.62.0` | `2.65.0` |\n| [com.google.cloud:libraries-bom](https://github.com/googleapis/java-cloud-bom) | `26.79.0` | `26.80.0` |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n\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\nUpdates `io.ktor:ktor-server-core` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-rate-limit` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-rate-limit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-rate-limit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-serialization-kotlinx-json` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-serialization-kotlinx-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-serialization-kotlinx-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-content-negotiation` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-content-negotiation's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-content-negotiation's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-metrics` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-metrics's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-metrics's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-call-logging` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-call-logging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-call-logging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-compression` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-compression's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-compression's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-openapi` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-openapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\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/ktorio/ktor/blob/main/CHANGELOG.md\"\u003eio.ktor:ktor-server-openapi's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.4.3\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9490\"\u003eKTOR-9490\u003c/a\u003e OpenAPI: Self-referential schema $ref uses FQN while schema is registered with a simple name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9463\"\u003eKTOR-9463\u003c/a\u003e OpenAPI: schema inference StackOverflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8938\"\u003eKTOR-8938\u003c/a\u003e WebSockets: WebSockets handler does not inherit server coroutine context\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-8989\"\u003eKTOR-8989\u003c/a\u003e Shared engine is closed when a client created with \u003ccode\u003econfig\u003c/code\u003e method is closed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9485\"\u003eKTOR-9485\u003c/a\u003e Apache5: FutureCallback never called, breaking Java agent instrumentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9497\"\u003eKTOR-9497\u003c/a\u003e Darwin: SIGABRT crash when \u003ccode\u003eclose()\u003c/code\u003e races with in-flight \u003ccode\u003eexecute()\u003c/code\u003e since 3.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9431\"\u003eKTOR-9431\u003c/a\u003e SuspendFunctionGun: ThreadContextElement leaks across requests when interceptor suspends\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9423\"\u003eKTOR-9423\u003c/a\u003e CannotTransformContentToTypeException leaks internal class names in response body\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9461\"\u003eKTOR-9461\u003c/a\u003e Incorrect link to the OWASP cheatsheet in the KDoc for CSRF plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9476\"\u003eKTOR-9476\u003c/a\u003e Unable to update/remove session data if no response content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9343\"\u003eKTOR-9343\u003c/a\u003e HttpRequestLifecycle plugin with \u003ccode\u003ecancelCallOnClose\u003c/code\u003e on, cancels subsequent requests when CallLogging plugin with callIdMdc is installed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5d9a99869b6005018fb821828c082d8e4ff05500\"\u003e\u003ccode\u003e5d9a998\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5547\"\u003e#5547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/6a11a76b9e13302ceea01e8763aa2fdc74ec73be\"\u003e\u003ccode\u003e6a11a76\u003c/code\u003e\u003c/a\u003e KTOR-8989 Close or cancel engine only when the client reference count… (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5525\"\u003e#5525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/3acb8ea1ab1738c0ff6fb68f3f0e75024edae2c7\"\u003e\u003ccode\u003e3acb8ea\u003c/code\u003e\u003c/a\u003e KTOR-8938 Inherit server coroutine context in WebSocket session (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5426\"\u003e#5426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/cec7d38a7183c43efa686eed6cad5cf889f37fd0\"\u003e\u003ccode\u003ecec7d38\u003c/code\u003e\u003c/a\u003e Fix flaky test failures on native platforms (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5485\"\u003e#5485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/bd8bea1c18eba45f150537d223a8aa3c107cb5fb\"\u003e\u003ccode\u003ebd8bea1\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update Jackson to 2.21 and 3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/5e29515e447d0b825f7e0fe1a60757b433e89c02\"\u003e\u003ccode\u003e5e29515\u003c/code\u003e\u003c/a\u003e KTOR-9507 Update netty to 4.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/733b8e1b08e1c87a0b731ddd42406c8b2a93e35f\"\u003e\u003ccode\u003e733b8e1\u003c/code\u003e\u003c/a\u003e KTOR-9373 Make ConcurrentMap iteration safe on Native (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5407\"\u003e#5407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/1f83f21df932ae6b00222ab5241e4bbc93c830e5\"\u003e\u003ccode\u003e1f83f21\u003c/code\u003e\u003c/a\u003e KTOR-9451 Support nested generic types (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5500\"\u003e#5500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/2440990f1085410261b41058815d24d6a9789bba\"\u003e\u003ccode\u003e2440990\u003c/code\u003e\u003c/a\u003e Apache 5 Client. Don't ignore resultCallback (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5526\"\u003e#5526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ktorio/ktor/commit/430f32098bc3565d2cba6d0dfd06758afba45410\"\u003e\u003ccode\u003e430f320\u003c/code\u003e\u003c/a\u003e Follow-up: KTOR-9497 Preventing a fatal crash in DarwinSession on close (\u003ca href=\"https://redirect.github.com/ktorio/ktor/issues/5533\"\u003e#5533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ktorio/ktor/compare/3.4.2...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.ktor:ktor-server-swagger` from 3.4.2 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ktorio/ktor/releases\"\u003eio.ktor:ktor-server-swagger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.4.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003ePublished 22 April 2026\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eBugfixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTOR-9451\"\u003eKTOR-9451\u003c/a\u003e OpenAPI schema inference not working for custom nested generics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KTO...\n\n_Description has been truncated_","html_url":"https://github.com/navikt/ao-oppfolgingskontor/pull/168","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/navikt%2Fao-oppfolgingskontor/issues/168","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/168/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-04T05:39:49.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4374241225","node_id":"PR_kwDOKTB41M7X4yA_","number":153,"state":"open","title":"Bump the minor-patch group across 1 directory with 10 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-04T05:39:49.000Z","updated_at":"2026-05-04T05:43:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-patch","update_count":10,"packages":[{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"com.microsoft.azure:msal4j","old_version":"1.24.0","new_version":"1.24.1","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-java"},{"name":"org.jetbrains.kotlin:kotlin-reflect","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.kapt","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.spring","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"io.github.oshai:kotlin-logging-jvm","old_version":"8.0.01","new_version":"8.0.02","repository_url":"https://github.com/oshai/kotlin-logging"},{"name":"org.springframework.boot:spring-boot-dependencies","old_version":"4.0.5","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"},{"name":"com.diffplug.spotless","old_version":"8.3.0","new_version":"8.4.0"}],"path":null,"ecosystem":"maven"},"body":"Bumps the minor-patch group with 10 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.0` |\n| [com.microsoft.azure:msal4j](https://github.com/AzureAD/microsoft-authentication-library-for-java) | `1.24.0` | `1.24.1` |\n| [org.jetbrains.kotlin:kotlin-reflect](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.kapt](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.plugin.spring](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [io.github.oshai:kotlin-logging-jvm](https://github.com/oshai/kotlin-logging) | `8.0.01` | `8.0.02` |\n| [org.springframework.boot:spring-boot-dependencies](https://github.com/spring-projects/spring-boot) | `4.0.5` | `4.0.6` |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n| com.diffplug.spotless | `8.3.0` | `8.4.0` |\n\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\nUpdates `com.microsoft.azure:msal4j` from 1.24.0 to 1.24.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/releases\"\u003ecom.microsoft.azure:msal4j's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.24.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImprove sovereign cloud support and network error handling by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1018\"\u003eAzureAD/microsoft-authentication-library-for-java#1018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove integration tests to a more standard directory path by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1017\"\u003eAzureAD/microsoft-authentication-library-for-java#1017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for code scanning alert no. 18: Implicit narrowing conversion in compound assignment by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1013\"\u003eAzureAD/microsoft-authentication-library-for-java#1013\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.azure:azure-identity from 1.10.0 to 1.12.2 in /msal4j-sdk in the maven group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/pull/1006\"\u003eAzureAD/microsoft-authentication-library-for-java#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/compare/v1.24.0...v1.24.1\"\u003ehttps://github.com/AzureAD/microsoft-authentication-library-for-java/compare/v1.24.0...v1.24.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/blob/dev/changelog.txt\"\u003ecom.microsoft.azure:msal4j's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion 1.24.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eImprove sovereign cloud support and network error handling (\u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1018\"\u003e#1018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInternal test restructuring (\u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1017\"\u003e#1017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate minor dependencies (\u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1006\"\u003e#1006\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1013\"\u003e#1013\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/AzureAD/microsoft-authentication-library-for-java/commit/932b4daa8861fcb50c122ea45e76d551227997f0\"\u003e\u003ccode\u003e932b4da\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1022\"\u003e#1022\u003c/a\u003e from AzureAD/avdunn/release-1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/16e5435d4c0226891db9b7c494a32f8c30957088\"\u003e\u003ccode\u003e16e5435\u003c/code\u003e\u003c/a\u003e Disable tests failing for server-side reasons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/e36facde8c5d635b34de2df69798f38870a2130c\"\u003e\u003ccode\u003ee36facd\u003c/code\u003e\u003c/a\u003e Version updates for 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/eb4d2d4f6ab2103f324a04e68de30578c59c72e7\"\u003e\u003ccode\u003eeb4d2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1013\"\u003e#1013\u003c/a\u003e from AzureAD/alert-autofix-18\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/c4753124d22eda14cd20245fc67dd02a40d1da9c\"\u003e\u003ccode\u003ec475312\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1018\"\u003e#1018\u003c/a\u003e from AzureAD/avdunn/instance-discovery-improvement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/01120559f5d279f57605a0b5997a1f0e6c9507cd\"\u003e\u003ccode\u003e0112055\u003c/code\u003e\u003c/a\u003e Small improvements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/30a78048d2b367183df6b9a57c2ec7901cf8ea4f\"\u003e\u003ccode\u003e30a7804\u003c/code\u003e\u003c/a\u003e Remove unnecessary tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/966c52afc17bcdd4f638aa259b534529efe7ed7d\"\u003e\u003ccode\u003e966c52a\u003c/code\u003e\u003c/a\u003e Address feedback and improve consistency with .NET\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/e8a601af7922a4990b7f99703a52ec599faabd1a\"\u003e\u003ccode\u003ee8a601a\u003c/code\u003e\u003c/a\u003e Improve sovereign cloud support and network error handling\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/commit/3ba5a85b74c53123b096fa09142488f7ddc81e35\"\u003e\u003ccode\u003e3ba5a85\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-java/issues/1017\"\u003e#1017\u003c/a\u003e from AzureAD/avdunn/reorganize-test-directory\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-java/compare/v1.24.0...v1.24.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin:kotlin-reflect` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin:kotlin-reflect's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin:kotlin-reflect's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.jvm` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.jvm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.kapt` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.kapt's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.kapt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.spring` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.spring's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.spring's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.github.oshai:kotlin-logging-jvm` from 8.0.01 to 8.0.02\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oshai/kotlin-logging/releases\"\u003eio.github.oshai:kotlin-logging-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.0.02\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix GraalVM native build error caused by stale substitution target in v8.x by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oshai/kotlin-logging/pull/601\"\u003eoshai/kotlin-logging#601\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/oshai/kotlin-logging/compare/8.0.01...8.0.02\"\u003ehttps://github.com/oshai/kotlin-logging/compare/8.0.01...8.0.02\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/oshai/kotlin-logging/commit/accd3ca8cbedefb818f6064ed526fb00a0141064\"\u003e\u003ccode\u003eaccd3ca\u003c/code\u003e\u003c/a\u003e bump version to 8.0.03\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oshai/kotlin-logging/commit/2bd058ada40799b7e3953b9f7d4a7112a4860fd2\"\u003e\u003ccode\u003e2bd058a\u003c/code\u003e\u003c/a\u003e bump version to 8.0.02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oshai/kotlin-logging/commit/8ab1a8a49d879b06272e088472981e57f56428d6\"\u003e\u003ccode\u003e8ab1a8a\u003c/code\u003e\u003c/a\u003e Fix GraalVM native build error caused by stale substitution target in v8.x (#...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/oshai/kotlin-logging/compare/8.0.01...8.0.02\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot:spring-boot-dependencies` 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:spring-boot-dependencies'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...\n\n_Description has been truncated_","html_url":"https://github.com/OSGP/gxf-java-utilities/pull/153","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/OSGP%2Fgxf-java-utilities/issues/153","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/153/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-04T01:54:25.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4373602505","node_id":"PR_kwDOKQhBbs7X2v6J","number":163,"state":"closed","title":"Bump org.sonarqube from 7.2.3.7755 to 7.3.0.8198","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-04T01:57:17.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T01:54:25.000Z","updated_at":"2026-05-04T01:57:18.000Z","time_to_close":172,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps org.sonarqube from 7.2.3.7755 to 7.3.0.8198.\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.sonarqube\u0026package-manager=gradle\u0026previous-version=7.2.3.7755\u0026new-version=7.3.0.8198)](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/mkutz/untangle-your-spaghetti-test-code/pull/163","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkutz%2Funtangle-your-spaghetti-test-code/issues/163","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/163/packages"}},{"old_version":"7.2.3.7755","new_version":"7.3.0.8198","update_type":"minor","path":null,"pr_created_at":"2026-05-01T06:22:51.000Z","version_change":"7.2.3.7755 → 7.3.0.8198","issue":{"uuid":"4363150180","node_id":"PR_kwDOBZpuic7XW03s","number":195,"state":"open","title":"Bump the all group with 8 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-01T06:22:51.000Z","updated_at":"2026-05-01T06:24:19.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"all","update_count":8,"packages":[{"name":"org.sonarqube","old_version":"7.2.3.7755","new_version":"7.3.0.8198"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"jaxen:jaxen","old_version":"2.0.0","new_version":"2.0.1","repository_url":"https://github.com/jaxen-xpath/jaxen"},{"name":"com.google.code.gson:gson","old_version":"2.13.2","new_version":"2.14.0","repository_url":"https://github.com/google/gson"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"org.jetbrains.kotlin:kotlin-gradle-plugin","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.3.21","repository_url":"https://github.com/JetBrains/kotlin"},{"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"}],"path":null,"ecosystem":"maven"},"body":"Bumps the all group with 8 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| org.sonarqube | `7.2.3.7755` | `7.3.0.8198` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [jaxen:jaxen](https://github.com/jaxen-xpath/jaxen) | `2.0.0` | `2.0.1` |\n| [com.google.code.gson:gson](https://github.com/google/gson) | `2.13.2` | `2.14.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n| [org.jetbrains.kotlin:kotlin-gradle-plugin](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.3.21` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n\nUpdates `org.sonarqube` from 7.2.3.7755 to 7.3.0.8198\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `jaxen:jaxen` from 2.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases\"\u003ejaxen:jaxen's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe build is now fully byte-per-byte reproducible. If you use the same JDK on the same platform to compile, you'll get the same bytes out every time. This is a prerequisite for hash-based defenses against supply chain and MITM attacks.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe release has been mostly automated. It's not quite a one-click deploy but it's close.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSeveral bugs in XPath conformance detected by Claude Sonnet 4.6 were fixed:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003eround()\u003c/code\u003e function returns negative zero for values between -0.5 and -0.0.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003enumber()\u003c/code\u003e function rejects some strings Java recognizes as a number but XPath does not.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanyMatchingNode()\u003c/code\u003e and \u003ccode\u003eevaluateAsBoolean()\u003c/code\u003e no longer throw \u003ccode\u003eNoSuchElementException\u003c/code\u003e when evaluating an XPath expression with multiple predicates and more nodes than predicates.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eDefaultCommentNodeStep.getText()\u003c/code\u003e includes predicates. (This one's very unlikely to have any effect on XPath queries or evaluation.)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe DOMNavigator can now search inside entity reference and document fragment nodes.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epunctuation and whitespace by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/157\"\u003ejaxen-xpath/jaxen#157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove duplicated condition from PatternParser convertStep by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/159\"\u003ejaxen-xpath/jaxen#159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParameterize translate function.evaluate by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/161\"\u003ejaxen-xpath/jaxen#161\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate compiler plugin to 3.10.1 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/165\"\u003ejaxen-xpath/jaxen#165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003euse StringBuilder instead of StringBuffer by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/160\"\u003ejaxen-xpath/jaxen#160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSimplify assertions by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/162\"\u003ejaxen-xpath/jaxen#162\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-project-info-reports-plugin 3.4.2 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/166\"\u003ejaxen-xpath/jaxen#166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-javadoc-plugin 3.5.0 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/167\"\u003ejaxen-xpath/jaxen#167\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeprecate own implementation of SingletonList by \u003ca href=\"https://github.com/hduelme\"\u003e\u003ccode\u003e@​hduelme\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/169\"\u003ejaxen-xpath/jaxen#169\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-source-plugin 3.2.1 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/171\"\u003ejaxen-xpath/jaxen#171\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eclarify a few comments by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/175\"\u003ejaxen-xpath/jaxen#175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emaven-compiler-plugin 3.11.0 by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/176\"\u003ejaxen-xpath/jaxen#176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate source and assembly plugins by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/177\"\u003ejaxen-xpath/jaxen#177\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebetter test code namespaces by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/178\"\u003ejaxen-xpath/jaxen#178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003equiet javadoc by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/179\"\u003ejaxen-xpath/jaxen#179\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove defunct mailing list archives by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/183\"\u003ejaxen-xpath/jaxen#183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate build plugins by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/184\"\u003ejaxen-xpath/jaxen#184\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMore plugin updates by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/185\"\u003ejaxen-xpath/jaxen#185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate Maven plugins by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/187\"\u003ejaxen-xpath/jaxen#187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove maxPermSize by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/189\"\u003ejaxen-xpath/jaxen#189\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd devcontainer by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/192\"\u003ejaxen-xpath/jaxen#192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodespaces by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/193\"\u003ejaxen-xpath/jaxen#193\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003euse more defaults by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/194\"\u003ejaxen-xpath/jaxen#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse https in pom.xml by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/196\"\u003ejaxen-xpath/jaxen#196\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate Java 1.3 javadoc references to current project requirements by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/200\"\u003ejaxen-xpath/jaxen#200\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd explicit versions for Maven core lifecycle plugins by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/198\"\u003ejaxen-xpath/jaxen#198\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd comprehensive GitHub Copilot instructions for Jaxen development workflow by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/202\"\u003ejaxen-xpath/jaxen#202\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix all javadoc to conform to Oracle Javadoc guidelines by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/206\"\u003ejaxen-xpath/jaxen#206\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement comprehensive API compatibility checking with Animal Sniffer and Japicmp plugins by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/204\"\u003ejaxen-xpath/jaxen#204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd SECURITY.md file with security reporting instructions by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/208\"\u003ejaxen-xpath/jaxen#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Maven wrapper to project by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/210\"\u003ejaxen-xpath/jaxen#210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove optimize flag by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/215\"\u003ejaxen-xpath/jaxen#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove \u003ca href=\"https://github.com/see\"\u003e\u003ccode\u003e@​see\u003c/code\u003e\u003c/a\u003e references to Javadoc-excluded packages by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/218\"\u003ejaxen-xpath/jaxen#218\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Actions CI for Java 8 by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/220\"\u003ejaxen-xpath/jaxen#220\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e2.0 no longer beta by \u003ca href=\"https://github.com/elharo\"\u003e\u003ccode\u003e@​elharo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/222\"\u003ejaxen-xpath/jaxen#222\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace CircleCI with GitHub Actions CI (Java 8) by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/pull/221\"\u003ejaxen-xpath/jaxen#221\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/jaxen-xpath/jaxen/commit/21b6f5f4a85c61964e79eabadbf32451fa2a14ec\"\u003e\u003ccode\u003e21b6f5f\u003c/code\u003e\u003c/a\u003e Release 2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/861b412b552dd397ea086fe28246ed33ccff6d0e\"\u003e\u003ccode\u003e861b412\u003c/code\u003e\u003c/a\u003e docs: fix GitHub fine-grained PAT setup instructions to match current UI (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/307\"\u003e#307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/c0fb3052e46cdfa8e1bfa64f0d39ddbbc8984441\"\u003e\u003ccode\u003ec0fb305\u003c/code\u003e\u003c/a\u003e Move GPG private key export step to point of use in RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/305\"\u003e#305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/b57f131ccc66efd95318bb1da7cb8ed044de47e8\"\u003e\u003ccode\u003eb57f131\u003c/code\u003e\u003c/a\u003e doc: add GitHub PAT creation instructions to RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/304\"\u003e#304\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/1cc4f79f81a86d6d10b1e6bcddf10f873f0fc7d2\"\u003e\u003ccode\u003e1cc4f79\u003c/code\u003e\u003c/a\u003e docs: clarify release secrets are repository-scoped (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/302\"\u003e#302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/efbe4bfb1fb082d20c1d3d0833df0bfa94267064\"\u003e\u003ccode\u003eefbe4bf\u003c/code\u003e\u003c/a\u003e Change CI/CD integration from CircleCI to GitHub Actions (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/301\"\u003e#301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/becec3a6f8ae76f20189e6c298b5c3902577abcd\"\u003e\u003ccode\u003ebecec3a\u003c/code\u003e\u003c/a\u003e Add hyperlinks to GitHub pages referenced in RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/298\"\u003e#298\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/b54daecb3712c34e2cbf80dfe0d2df9c11e86131\"\u003e\u003ccode\u003eb54daec\u003c/code\u003e\u003c/a\u003e Migrate release process from OSSRH to Central Publishing Portal (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/295\"\u003e#295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/6800fd2294c872aed2039d2f8fd6b253e3c028c3\"\u003e\u003ccode\u003e6800fd2\u003c/code\u003e\u003c/a\u003e Clarify GPG key creation instructions in RELEASING.md (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/291\"\u003e#291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaxen-xpath/jaxen/commit/6731f5712f67ada1948e9a9eb82d58e16fdb43eb\"\u003e\u003ccode\u003e6731f57\u003c/code\u003e\u003c/a\u003e Update Maven distribution URL to version 3.9.15 (\u003ca href=\"https://redirect.github.com/jaxen-xpath/jaxen/issues/289\"\u003e#289\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jaxen-xpath/jaxen/compare/v2.0.0...v2.0.1\"\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\u003eImpl\u003c/code\u003e) in \u003ccode\u003ejava.lang.reflect\u003c/code\u003e. For some reason, they were serializable, even though the \u003ccode\u003ejava.lang.reflect\u003c/code\u003e implementations are not. Having unnecessarily serializable classes could \u003cem\u003econceivably\u003c/em\u003e have been a security problem if they were part of a larger exploit using serialization. (We do not consider this a likely scenario and do not suggest that you need to update Gson just to get this change.)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eLegacyProtoTypeAdapterFactory\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/3014\"\u003egoogle/gson#3014\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is not part of any released artifact, but may be of use when trying to fix code that is currently accessing the internals of protobuf classes via reflection.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMake AppendableWriter do flush and close if delegation object supports by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2925\"\u003egoogle/gson#2925\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther less visible changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd default capacity to EnumTypeAdapter maps by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2959\"\u003egoogle/gson#2959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: move derived adapters from Gson to TypeAdapters by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2951\"\u003egoogle/gson#2951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003enew Gson()\u003c/code\u003e by \u003ca href=\"https://github.com/MukjepScarlet\"\u003e\u003ccode\u003e@​MukjepScarlet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2864\"\u003egoogle/gson#2864\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/ThirdGoddess\"\u003e\u003ccode\u003e@​ThirdGoddess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/2944\"\u003egoogle/gson#2944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lmj798\"\u003e\u003ccode\u003e@​lmj798\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/2988\"\u003egoogle/gson#2988\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Eng-YasminKotb\"\u003e\u003ccode\u003e@​Eng-YasminKotb\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/3005\"\u003egoogle/gson#3005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/andrewstellman\"\u003e\u003ccode\u003e@​andrewstellman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/google/gson/pull/3006\"\u003egoogle/gson#3006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/google/gson/compare/gson-parent-2.13.2...gson-parent-2.14.0\"\u003ehttps://github.com/google/gson/compare/gson-parent-2.13.2...gson-parent-2.14.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/3ff35d6269894901ab8006258395aafc4b9765cd\"\u003e\u003ccode\u003e3ff35d6\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release gson-parent-2.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/a3024fde2a5c12b9a9a0b6b914ae4899aa574d81\"\u003e\u003ccode\u003ea3024fd\u003c/code\u003e\u003c/a\u003e Bump the maven group with 13 updates (\u003ca href=\"https://redirect.github.com/google/gson/issues/3002\"\u003e#3002\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/5689ffe44952ca6ed44c595886b9043286311b23\"\u003e\u003ccode\u003e5689ffe\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 3 updates (\u003ca href=\"https://redirect.github.com/google/gson/issues/3018\"\u003e#3018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/48db33cbf93af6b2f5b117dfdfd826de47f7229c\"\u003e\u003ccode\u003e48db33c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eLegacyProtoTypeAdapterFactory\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/google/gson/issues/3014\"\u003e#3014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/53d703ee76ca3e951fa4a727307c1f28dbcaf3aa\"\u003e\u003ccode\u003e53d703e\u003c/code\u003e\u003c/a\u003e Update outdated comment regarding serializable types (\u003ca href=\"https://redirect.github.com/google/gson/issues/3012\"\u003e#3012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/0189b727761f31596d1a27b7c60b42478dc9f331\"\u003e\u003ccode\u003e0189b72\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003eSerializable\u003c/code\u003e from internal \u003ccode\u003eType\u003c/code\u003e implementation classes. (\u003ca href=\"https://redirect.github.com/google/gson/issues/3011\"\u003e#3011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/f4d371d29c04066dbe7fdb31f642831f9c7f40cd\"\u003e\u003ccode\u003ef4d371d\u003c/code\u003e\u003c/a\u003e Fix duplicate key detection when first value is null (\u003ca href=\"https://redirect.github.com/google/gson/issues/3006\"\u003e#3006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/27d9ba1eeeeb156540cf5397504a4f9f256e911f\"\u003e\u003ccode\u003e27d9ba1\u003c/code\u003e\u003c/a\u003e Fix typo in README (JPMS dependencies section) (\u003ca href=\"https://redirect.github.com/google/gson/issues/3005\"\u003e#3005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/1fa9b7a0a994b006b3be00e2df9de778e71e6807\"\u003e\u003ccode\u003e1fa9b7a\u003c/code\u003e\u003c/a\u003e Validate that strings being parsed as integers consist of ASCII characters (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/gson/commit/b7d59549188867deb42e46073fb38735a5beda1c\"\u003e\u003ccode\u003eb7d5954\u003c/code\u003e\u003c/a\u003e Add iterator fail-fast tests for LinkedTreeMap.clear() (\u003ca href=\"https://redirect.github.com/google/gson/issues/2992\"\u003e#2992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/google/gson/compare/gson-parent-2.13.2...gson-parent-2.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\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\nUpdates `org.jetbrains.kotlin:kotlin-gradle-plugin` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin:kotlin-gradle-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin:kotlin-gradle-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/68a9e3f99fcd59c5440970f5f34aff09ce462a69\"\u003e\u003ccode\u003e68a9e3f\u003c/code\u003e\u003c/a\u003e [minor] fix testdata name in explain test\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.3.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.3.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.3.21\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.21\u003c/h2\u003e\n\u003ch3\u003eBackend. Wasm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84610\"\u003e\u003ccode\u003eKT-84610\u003c/code\u003e\u003c/a\u003e [Wasm] Failed to compile klibs in IC mode\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCompiler\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84566\"\u003e\u003ccode\u003eKT-84566\u003c/code\u003e\u003c/a\u003e Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85358\"\u003e\u003ccode\u003eKT-85358\u003c/code\u003e\u003c/a\u003e Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85626\"\u003e\u003ccode\u003eKT-85626\u003c/code\u003e\u003c/a\u003e  \u003ccode\u003e@JvmRecord\u003c/code\u003e in commonMain breaks compileCommonMainKotlinMetadata with \u0026quot;Cannot access 'java.lang.Record'\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85405\"\u003e\u003ccode\u003eKT-85405\u003c/code\u003e\u003c/a\u003e Postpone/Revert \u003ccode\u003eDontIgnoreUpperBoundViolatedOnImplicitArguments\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84678\"\u003e\u003ccode\u003eKT-84678\u003c/code\u003e\u003c/a\u003e K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85021\"\u003e\u003ccode\u003eKT-85021\u003c/code\u003e\u003c/a\u003e False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavaScript\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82395\"\u003e\u003ccode\u003eKT-82395\u003c/code\u003e\u003c/a\u003e Support top-level declarations from compiler plugins in JS incremental compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84475\"\u003e\u003ccode\u003eKT-84475\u003c/code\u003e\u003c/a\u003e K/JS: false-positive exportability warnings in multi-module project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84633\"\u003e\u003ccode\u003eKT-84633\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u0026quot;Serializer for class not found\u0026quot; error when IR output granularity is \u003ccode\u003ewhole-program\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85047\"\u003e\u003ccode\u003eKT-85047\u003c/code\u003e\u003c/a\u003e Kotlin/JS: \u003ccode\u003e@JsStatic\u003c/code\u003e on suspend fun of class companion generates incorrect d.ts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84517\"\u003e\u003ccode\u003eKT-84517\u003c/code\u003e\u003c/a\u003e K/JS: bad mappings data in outputted Kotlin stdlib source map\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLibraries\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71848\"\u003e\u003ccode\u003eKT-71848\u003c/code\u003e\u003c/a\u003e Kotlinx.metadata: Add \u003ccode\u003eCompilerPluginData\u003c/code\u003e into Km API\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNative. C and ObjC Import\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85399\"\u003e\u003ccode\u003eKT-85399\u003c/code\u003e\u003c/a\u003e Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85508\"\u003e\u003ccode\u003eKT-85508\u003c/code\u003e\u003c/a\u003e K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84729\"\u003e\u003ccode\u003eKT-84729\u003c/code\u003e\u003c/a\u003e Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Gradle. Compiler plugins\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85257\"\u003e\u003ccode\u003eKT-85257\u003c/code\u003e\u003c/a\u003e AGP/Compose: MergeMappingFileTask clears R8 artifacts due to \u003ccode\u003e@OutputDirectory\u003c/code\u003e annotation on AGP 9.1+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Scripts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85105\"\u003e\u003ccode\u003eKT-85105\u003c/code\u003e\u003c/a\u003e Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85103\"\u003e\u003ccode\u003eKT-85103\u003c/code\u003e\u003c/a\u003e Exception while generating code when explain destructuring decls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84842\"\u003e\u003ccode\u003eKT-84842\u003c/code\u003e\u003c/a\u003e scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85029\"\u003e\u003ccode\u003eKT-85029\u003c/code\u003e\u003c/a\u003e Kotlin Scripting: ScriptDiagnostic reports \u0026quot;at null\u0026quot; instead of error location\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTools. Statistics (FUS)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-85628\"\u003e\u003ccode\u003eKT-85628\u003c/code\u003e\u003c/a\u003e KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/fea1ad8c18995b80d1ca0e3917056104613d23db\"\u003e\u003ccode\u003efea1ad8\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.3.21-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/09c341e858b8f70d92955fc6b67d6a04962760b4\"\u003e\u003ccode\u003e09c341e\u003c/code\u003e\u003c/a\u003e disable swift export execution tests in order to update macos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/67a08681cdd53b318217e6f35d835e0ab3b2e31c\"\u003e\u003ccode\u003e67a0868\u003c/code\u003e\u003c/a\u003e Avoid accessing KotlinNativeLink taskProvider when task was not executed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f89e5dbc1867714116e17be1066d6c68e30cc2d4\"\u003e\u003ccode\u003ef89e5db\u003c/code\u003e\u003c/a\u003e [K/N] Disable TSAN in runtime tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/45d6c859c027c4e82b14b4861e36bc125600e2b0\"\u003e\u003ccode\u003e45d6c85\u003c/code\u003e\u003c/a\u003e [K/N] Don't generate generic safe casts for Objective-C types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/9261a6f0790b7504e0223e9e0a0dd242fe0cc3f7\"\u003e\u003ccode\u003e9261a6f\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85508\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/c9ab9db37a191f2eb1ce0f5b7ff502ca9d4b3a0d\"\u003e\u003ccode\u003ec9ab9db\u003c/code\u003e\u003c/a\u003e [K/N][tests] Add a reproducer for KT-85399\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/502e84484e520fbe1a93958be8da97e06a04d7ed\"\u003e\u003ccode\u003e502e844\u003c/code\u003e\u003c/a\u003e Explain: fix for destructuring declarations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/0c26485d83f532aa8afbb868895061b7132fd7c8\"\u003e\u003ccode\u003e0c26485\u003c/code\u003e\u003c/a\u003e Explain: fix for object literals\u003c/li\u003e\n\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/VerifAPS/verifaps-lib/pull/195","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/VerifAPS%2Fverifaps-lib/issues/195","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/195/packages"}}]}