Skip to content

Feat/catalog type selector#2633

Draft
Kurtiscwright wants to merge 2 commits into
apache:mainfrom
Kurtiscwright:feat/catalog-type-selector
Draft

Feat/catalog type selector#2633
Kurtiscwright wants to merge 2 commits into
apache:mainfrom
Kurtiscwright:feat/catalog-type-selector

Conversation

@Kurtiscwright

Copy link
Copy Markdown
Contributor

This PR was written with help from LLM based tools.

Which issue does this PR close?

  • Closes #.

What changes are included in this PR?

Add a CatalogType enum to the catalog loader that lets callers
select a built-in catalog by a declared variant
(CatalogType::Rest) instead of a bare type string,
with an inherent async fn load that dispatches via an
exhaustive match.

Including Memory closes a gap where the in-memory catalog was
absent from the string registry.

This is purely additive: the existing free load(&str),
supported_types(), CatalogLoader, and BoxedCatalogBuilder are
left unchanged and continue to work alongside the new selector.

This approach will be repeated for how file format's registry will be
implemented. Applying the approach here is aimed at improving the
Catalog selection to be more idiomatic and to get alignment from the
community on how we want to structure registries.

Are these changes tested?

Brand new unit tests to validate that storage factory is passed through correctly as well as overall functionality is used.

Kurtis Wright and others added 2 commits June 12, 2026 22:41
Add a `CatalogType` enum to the catalog loader that lets callers
select a built-in catalog by a declared variant
(`CatalogType::Rest`) instead of a bare type string,
with an inherent `async fn load` that dispatches via an
exhaustive match.

Including `Memory` closes a gap where the in-memory catalog was
absent from the string registry.

This is purely additive: the existing free `load(&str)`,
`supported_types()`, `CatalogLoader`, and `BoxedCatalogBuilder` are
left unchanged and continue to work alongside the new selector.

This approach will be repeated for how file format's registry will be
implemented. Applying the approach here is aimed at improving the
Catalog selection to be more idiomatic and to get alignment from the
community on how we want to structure registries.
@Kurtiscwright Kurtiscwright marked this pull request as draft June 14, 2026 05:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant