HippoBaro opened a new pull request, #12036: URL: https://github.com/apache/arrow-rs/pull/12036
# Which issue does this PR close? Follow-up to #11971, as discussed in https://github.com/apache/arrow-rs/pull/11971#issuecomment-6529022949. # Rationale for this change #11971 introduced `ArrowRowGroupWriterFactory::try_new` and deprecated the infallible `new` constructor. Keeping `new` required storing schema-planning failures and replaying them when column writers were created. This follow-up removes the deprecated API and its compatibility machinery as a breaking change for a future major release. # What changes are included in this PR? - Remove `ArrowRowGroupWriterFactory::new`. - Store the validated `Arc<ArrowWriteSchemaPlan>` directly and remove the deferred-error representation and helper indirection. - Retain construction-time error assertions for mismatched leaf counts and invalid map-key schemas; remove tests specific to deferred-error replay. # Are these changes tested? Existing tests cover immediate schema-validation errors, shared schema plans, column-writer creation, row-group writing, and encrypted writing. The error-validation tests now exercise only `try_new`. Existing documentation examples already use `try_new`. # Are there any significant user-facing changes? **Breaking API change (`api-change`):** replace `ArrowRowGroupWriterFactory::new(&file_writer, schema)` with `ArrowRowGroupWriterFactory::try_new(&file_writer, schema)?` (or otherwise handle the returned `Result`). Schema-planning errors are returned during construction rather than deferred until column-writer creation. --- AI assistance was used to prepare the API removal, simplify the compatibility code, update tests, and draft this description. This PR is opened as a draft for author review. -- 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]
