Refactor extensions architecture: replace TableIngestClient with specialized clients #37
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR refactors the extensions module architecture by decomposing the monolithic
TableIngestClientinto three specialized, focused clients:FileClient,MaterializationClient, andTableClient. This change improves code organization, maintainability, and follows the single responsibility principle.Key Accomplishments
FileClient: Handles file operations and managementMaterializationClient: Manages data materialization processesTableClient: Focuses on table-specific operations__init__.pyandextensions.pyto expose the new client architectureBreaking Changes
TableIngestClienthas been completely removedTableIngestClientwill need to be updated to use the appropriate new client (FileClient,MaterializationClient, orTableClient)TableIngestClientwill require refactoringTesting Notes
TableIngestClienttests (112 lines)Migration Impact
Teams using this library will need to:
TableIngestClientusageThis refactoring provides a cleaner, more maintainable codebase while preserving all existing functionality through better-organized, purpose-built clients.
🤖 Generated with Claude Code
Branch Info:
feature/extension-clients-refactormainCo-Authored-By: Claude noreply@anthropic.com