fvaleye opened a new pull request, #1598:
URL: https://github.com/apache/iceberg-rust/pull/1598
## Which issue does this PR close?
- Closes #1256
## What changes are included in this PR?
### Catalog Registry Refactor
* Introduced a static `CATALOG_REGISTRY` mapping catalog type strings (e.g.,
`"rest"`, `"s3tables"`) to their corresponding builder factory closures.
* Eliminates hard-coded catalog type handling in `load()` and centralizes
catalog registration logic.
* Makes it easier to add new catalog implementations in the future without
touching core loader logic.
### New S3 Tables Catalog Support
* Implemented an **S3 Tables Catalog Builder**.
* Added the `"s3tables"` catalog type to the registry in
`crates/catalog/loader`.
* Updated workspace configuration to include the new
`iceberg-catalog-s3tables` crate.
* Added comprehensive example usage in the crate documentation.
## Are these changes tested?
Yes.
* Added new unit tests for the S3 Tables catalog.
* Expanded loader tests to:
* Verify loading of supported catalogs via the registry.
* Validate improved error messages listing supported catalog types.
* Test the new ergonomic `CatalogLoader` API for both `"rest"` and
`"s3tables"`.
--
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]