nssalian commented on issue #1149:
URL: https://github.com/apache/iceberg-go/issues/1149#issuecomment-6509654850

   Update now that #2062 has set the v1 scope: the full decomposition stays out 
of v1, and #2083 takes the separable services. Orphan cleanup moved to 
`table/maintenance` (#2086), and inspect is next. The flat package is now 78 
non-test and 264 test files.
   
   I re-checked the layout on `main` (00fbb57) and some findings:
   
   - **Aliased leaf packages don't need `/v2`.** Moving `LocationProvider` into 
`table/location` behind `type LocationProvider = location.Provider` passes 
build, vet and tests, and an external module using the old `table.*` names 
builds unchanged. Only moving methods off `Table` is breaking.
   - **`writer`, `scanner` and `tx` packages are still blocked.** 
`MetadataBuilder` has 34 unexported fields, and `write_records.go` writes 
`props` directly.
   - **Compaction can't move on its own.** `table/compaction` imports `table`, 
and `RewriteDataFiles` calls `ExecuteCompactionGroup`.
   
   Before v1, in #2083:
   - [x] Orphan cleanup (#2086)
   - [ ] Inspect
   - [ ] Compaction, only together with `RewriteDataFiles`
   
   After v1:
   - [ ] Aliased leaf packages, starting with `table/location`
   - [ ] Group the remaining files by prefix inside `table`
   
   Not planned: `writer`, `scanner` and `tx` packages without a 
`MetadataBuilder` redesign.
   


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