stevenschlansker opened a new pull request, #3714:
URL: https://github.com/apache/fory/pull/3714

   Opt in with `.withSchemaEvolution()` on any row, array, or map codec 
builder. Fields carry `@ForyVersion(since, until)`; removed fields are listed 
on a nested interface referenced from
   `@ForySchema(removedFields = ...)`, which preserves parameterized types like 
`List<String>`. Older payloads are dispatched at read time; nothing changes 
when the flag is off. Standard and compact formats supported.
   
   ## Why?
   
   Currently changing row format schema definition in any way invalidates all 
records
   
   ## What does this PR do?
   
   Propose a new concept of format versions, each succeeding version may add or 
remove fields from types, and deserialization machinery picks version based on 
schema hash
   
   ## AI Contribution Checklist
   
   AI Usage Disclosure
   - substantial_ai_assistance: yes
   - scope: all
   - affected_files_or_subsystems: row format Java
   - ai_review: <line-by-line self-review completed; summarize the two-reviewer 
loop and final no-further-comments result>
   - ai_review_artifacts: <embedded screenshots or links showing the final 
clean review results from both fresh reviewers on the current PR diff or 
current HEAD after the latest code changes>
   - human_verification: <checks run locally or in CI + pass/fail summary + 
contributor reviewed results>
   - performance_verification: <N/A or benchmark/regression evidence summary>
   - provenance_license_confirmation: <Apache-2.0-compatible provenance 
confirmed; no incompatible third-party code introduced>
   - [ ] If `yes`, I included a completed [AI Contribution 
Checklist](https://github.com/apache/fory/blob/main/AI_POLICY.md#9-contributor-checklist-for-ai-assisted-prs)
 in this PR description and the required `AI Usage Disclosure`.
   - [ ] If `yes`, my PR description includes the required `ai_review` summary 
and screenshot evidence of the final clean AI review results from both fresh 
reviewers on the current PR diff or current HEAD after the latest code changes.
   
   ## Does this PR introduce any user-facing change?
   
   New codec option: schema evolution. Some small annotations and a builder 
method.
   Existing row format compatibility unchanged
   
   ## Benchmark
   
   Includes performance optimization of 20-30% less memory allocation in row 
codec decoding
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to