The GitHub Actions job "C++ Linter" on 
iceberg-cpp.git/data_file_writers_factory_new has failed.
Run started by GitHub user shangxinli (triggered by shangxinli).

Head commit for run:
b7bef675e8b19827393d5c6d35fb12c2b0c569ed / Xinli Shang <[email protected]>
feat: add FileWriterFactory for creating data file writers

Add FileWriterFactory class with proper validation, error handling, and 
documentation.

High Priority Improvements:
- Fix parameter passing: Use pass-by-value + std::move for sink parameters 
(path, partition)
- Add input validation: Validate schema, spec, path, and equality_field_ids in 
factory methods
- Add thread safety documentation: Document that factory and writers are NOT 
thread-safe

Medium Priority Improvements:
- Add state management to stubs: Track is_closed state, validate Write() after 
close, make Close() idempotent
- Improve WriteResult documentation: Document when multiple files are produced 
(position deletes, file rolling)

Implementation Details:
- FileWriterFactory directly creates writers (true factory pattern)
- Writers use friend pattern - only factory can construct them
- Stub implementations validate inputs and state before returning NotImplemented
- All 23 tests passing

Related to #441

Report URL: https://github.com/apache/iceberg-cpp/actions/runs/20621734577

With regards,
GitHub Actions via GitBox

Reply via email to