fix(dbutils): accept pathlib.Path arguments in fs methods#1461
Open
nileshpatil6 wants to merge 2 commits into
Open
fix(dbutils): accept pathlib.Path arguments in fs methods#1461nileshpatil6 wants to merge 2 commits into
nileshpatil6 wants to merge 2 commits into
Conversation
DBUtils fs methods only accepted string paths, raising an error when pathlib.Path objects were passed. Since Path is the standard way to handle paths in modern Python, convert Path to str at method entry via a small _as_str helper. Fixes databricks#1459 Signed-off-by: nileshpatil6 <technil6436@gmail.com>
Signed-off-by: nileshpatil6 <technil6436@gmail.com>
|
If integration tests don't run automatically, an authorized user can run them manually by following the instructions below: Trigger: Inputs:
Checks will be approved automatically on success. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Fixes #1459
dbutils.fsmethods only accepted plain strings, so passing apathlib.Pathfailed even though Path is idiomatic in modern Python.What changed
Added a small
_as_strhelper indatabricks/sdk/dbutils.pythat converts aPathtostrand leaves strings untouched. Called it at the entry of every_FsUtilmethod that takes a path argument (ls,cp,mv,rm,mkdirs,head,put,mount,unmount,updateMount).Tests
Added 7 unit tests (one per patched method) that pass a
Pathobject and assert the underlying API is still called with a plain string.Signed-off-by: nileshpatil6 technil6436@gmail.com