yinli-systems opened a new pull request, #10907:
URL: https://github.com/apache/arrow-rs/pull/10907

   Fixes #10131.
   
   ## Human review and ownership
   
   I reviewed the final diff and understand the checked conversion approach, 
the safe and unsafe cast semantics, and the regression coverage. I can debug 
and own this change.
   
   ## Summary
   
   - Respect `CastOptions` when `Time64` values are narrowed to `Time32`.
   - Use checked multiplication for `Time64(Microsecond)` to 
`Time64(Nanosecond)`.
   - Route `Date64` precision increases through the existing checked timestamp 
conversion.
   - Add regressions asserting that safe casts produce nulls and unsafe casts 
return errors.
   
   The original examples were fixed by #10162. This change covers the remaining 
audited paths: `Time64(us/ns) -> Time32(s/ms)`, `Time64(us) -> Time64(ns)`, and 
`Date64 -> Timestamp(us/ns)`.
   
   ## Validation
   
   - Negative control on `2c50074c`: the Time64 test returned non-null 
truncated values, and the Date64 test panicked with `attempt to multiply with 
overflow`.
   - `cargo test -p arrow-cast`: 377 unit tests and 11 doctests passed.
   - `cargo +stable fmt --all -- --check` passed.
   - `cargo clippy -p arrow-cast --all-targets --all-features -- -D warnings` 
passed.
   - `git diff upstream/main...HEAD --check` passed.
   
   ## AI assistance
   
   Codex assisted with auditing temporal conversion paths, preparing the 
implementation and regression tests, updating the branch onto current `main`, 
and running the validation above. The contributor reviewed the final diff and 
confirmed understanding and ownership before submission.
   


-- 
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]

Reply via email to