This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch docs
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/docs by this push:
new 43a1eacfa4 Add 10.0.0 release note for jsonschema CRTP conversion
(TODO-275)
43a1eacfa4 is described below
commit 43a1eacfa4df263f8d6e0492d8414725a681f654
Author: James Bognar <[email protected]>
AuthorDate: Tue Jul 21 12:59:48 2026 -0400
Add 10.0.0 release note for jsonschema CRTP conversion (TODO-275)
Co-authored-by: Cursor <[email protected]>
---
pages/release-notes/10.0.0.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/pages/release-notes/10.0.0.md b/pages/release-notes/10.0.0.md
index 621b425a1e..9d34174981 100644
--- a/pages/release-notes/10.0.0.md
+++ b/pages/release-notes/10.0.0.md
@@ -768,6 +768,8 @@ _TBD — to be filled in as development continues._
- **`BasicResource` becomes an abstract self-typed (CRTP) root (TODO-274).**
`BasicResource` is now `BasicResource<SELF extends BasicResource<SELF>>`
(mirroring `BasicHttpEntity`/`BasicHttpResponse`) and can no longer be
instantiated directly — use a concrete leaf (`StreamResource`,
`ByteArrayResource`, `StringResource`, `FileResource`, `ReaderResource`). The
breaking surface is narrow: `.as(BasicResource.class)` and `@Remote` methods
declared to return `BasicResource`/`HttpResource` s [...]
- **Canonical `juneau-rest-common` HTTP stack brought to the immutable-beans
paradigm (TODO-273).** `BasicHttpResponse` is now an abstract self-typed (CRTP)
root `BasicHttpResponse<SELF extends BasicHttpResponse<SELF>>`;
`BasicHttpException` is a funnel-only root (no CRTP — a generic `Throwable` is
illegal per JLS §8.1.2). The old `setUnmodifiable()` / `assertModifiable()`
flag idiom is removed on these public types and on the `HttpHeaderList` /
`HttpPartList` collections — use `unmodi [...]
+- **`jsonschema` bean family converted to CRTP self-typing (TODO-275).**
`JsonSchema` and `JsonSchemaProperty` are now self-typed roots
(`JsonSchema<SELF extends JsonSchema<SELF>>`, `JsonSchemaProperty<SELF extends
JsonSchemaProperty<SELF>>`); the ~185 covariant setter-narrowing overrides on
`JsonSchemaProperty`/`JsonSchemaPropertySimpleArray`/`JsonSchemaRef` were
removed. Fluent setters return the leaf type. Direct instantiation uses the
diamond form (`new JsonSchema<>()`); marshalling [...]
+
_Other entries TBD — to be filled in before release. See also the major
version bump note above._
### Deprecations