-
Notifications
You must be signed in to change notification settings - Fork 310
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
[#5139] feat: (python-client): Support GCS fileset in the python GVFS client #5160
base: main
Are you sure you want to change the base?
Conversation
This PR is not ready for review until #5079 is merged. |
@jerryshao @xloya |
@xloya would you please help to review this code, thanks. |
@@ -27,6 +27,8 @@ | |||
from fsspec.implementations.arrow import ArrowFSWrapper | |||
from fsspec.utils import infer_storage_options | |||
from pyarrow.fs import HadoopFileSystem | |||
from pyarrow.fs import GcsFileSystem |
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.
In the current implementation, that all storage Python lib dependencies will be introduced into PyGVFS. Although there will be no conflicts in most cases, it may be better for users to only load the underlying storage dependencies they need. I wonder if there is a better way to introduce other FileSystem dependencies on demand, could you take a time to research this?
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.
Okay, I will do it today.
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.
@xloya
I have updated the code and used importlib
to dynamically import file system classes according to needs.
What changes were proposed in this pull request?
Why are the changes needed?
It's user needs.
Fix: #5139
Does this PR introduce any user-facing change?
Modify the Python GVFS client.
How was this patch tested?
Test locally and add an IT that can't run automatically.
Modify mode as the following picture and execute
./gradlew :clients:client-python:test -PskipDockerTests=false
success.