Skip to content

Marshallable Core Interfaces & Base Classes #1038

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: adv/docs
Choose a base branch
from

Conversation

peter-lawrey
Copy link
Member

@peter-lawrey peter-lawrey commented May 30, 2025

📝 What this PR does

A focused tidy-up of the core marshalling APIs

Area Change Why it matters
Null-safety Marshallable.streamFromFile(Class<T>, String) is now annotated @NotNull instead of @Nullable. The method never returned null – the annotation now reflects reality.
API docs Re-wrote and expanded Javadoc for:
Marshallable and its helpers
ReadMarshallable, WriteMarshallable, MarshallableIn
• Trivially-copyable & config base classes
• Annotation/utility types (AsMarshallable, KeyedMarshallable, …)
• Deprecated DynamicEnum now states removal schedule
• Consistent first-line “intent” sentences (better IDE tooltips) • Clearer parameter/return contracts & exception notes • Practical examples and behavioural edge-cases • Explicit deprecation notice for DynamicEnum
Internal links & wording Fixed typos, modernised language, removed outdated references (delta wire, legacy flags). Easier onboarding; smaller learning curve.

Commit map

Commit Message Highlight
1/7 Create the branch @Nullable@NotNull for streamFromFile(Class, String)
2/7 Improve Marshallable Javadoc (#1031) 100-line rewrite, clearer utility docs
3/7 Improve marshallable interfaces Javadoc (#1032) Full docs for Read/WriteMarshallable
4/7 Improve Javadoc for marshallable base classes (#1033) Docs for BytesInBinaryMarshallable, SelfDescribingMarshallable, etc.
5/7 Improve Javadoc for configuration & trivially copyable classes (#1034) Merge-aware config notes, schema-evolution notes
6/7 Document deprecation in DynamicEnum (#1035) Clearly marked for removal in x.28
7/7 Improve MarshallableIn Javadoc (#1037) Extensive read-side docs & intern limit note

@peter-lawrey peter-lawrey force-pushed the adv/03-marshallable branch from 72418e6 to 19b8062 Compare June 2, 2025 09:21
@peter-lawrey peter-lawrey requested a review from tgd June 3, 2025 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant