-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
filesystem improvement and fixes #1274
Conversation
✅ Deploy Preview for dlt-hub-docs ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
# Conflicts: # tests/load/pipeline/test_filesystem_pipeline.py
# Conflicts: # tests/pipeline/utils.py
from fsspec import AbstractFileSystem | ||
|
||
|
||
class FSClientBase(ABC): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is to be debated, I find it very useful, but we can also make it private for now
dlt/pipeline/pipeline.py
Outdated
@@ -956,6 +958,21 @@ def sql_client(self, schema_name: str = None, credentials: Any = None) -> SqlCli | |||
schema = self._get_schema_or_create(schema_name) | |||
return self._sql_job_client(schema, credentials).sql_client | |||
|
|||
def fs_client(self, schema_name: str = None, credentials: Any = None) -> FSClientBase: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
more or less analog to sql_client
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rename it to _fs_client
until we discuss the exact interface.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd hide the _fs_client
. otherwise LGTM.
the FsClient interface: we need to take a look what we need to expose to end user and then make it public
dlt/pipeline/pipeline.py
Outdated
@@ -956,6 +958,21 @@ def sql_client(self, schema_name: str = None, credentials: Any = None) -> SqlCli | |||
schema = self._get_schema_or_create(schema_name) | |||
return self._sql_job_client(schema, credentials).sql_client | |||
|
|||
def fs_client(self, schema_name: str = None, credentials: Any = None) -> FSClientBase: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rename it to _fs_client
until we discuss the exact interface.
1abe6e0
to
535fe5c
Compare
Description
Fixes two bugs: