From fe7ecf4acf7cf4c084bd0f32162c8e0721567630 Mon Sep 17 00:00:00 2001 From: Scott Rohrer Date: Wed, 25 Oct 2023 19:50:29 -0400 Subject: [PATCH] Update dropbox.py for compatibility with Dropbox SDK v11.X.X (#3259) * Update dropbox.py for compatibility with Dropbox SDK v11.X.X `dropbox.dropbox` has been renamed to `dropbox.dropbox_client` https://github.com/dropbox/dropbox-sdk-python/blob/main/UPGRADING.md * Update tox.ini and dropbox_test --- luigi/contrib/dropbox.py | 4 ++-- test/contrib/dropbox_test.py | 6 +++--- tox.ini | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/luigi/contrib/dropbox.py b/luigi/contrib/dropbox.py index 52a6b9ae16..76760b8688 100644 --- a/luigi/contrib/dropbox.py +++ b/luigi/contrib/dropbox.py @@ -30,7 +30,7 @@ logger = logging.getLogger('luigi-interface') try: - import dropbox.dropbox + import dropbox.dropbox_client import dropbox.exceptions import dropbox.files except ImportError: @@ -76,7 +76,7 @@ def __init__(self, token, user_agent="Luigi"): raise ValueError("The token parameter must contain a valid Dropbox Oauth2 Token") try: - conn = dropbox.dropbox.Dropbox(oauth2_access_token=token, user_agent=user_agent) + conn = dropbox.dropbox_client.Dropbox(oauth2_access_token=token, user_agent=user_agent) except Exception as e: raise Exception("Cannot connect to Dropbox. Check your Internet connection and the token. \n" + repr(e)) diff --git a/test/contrib/dropbox_test.py b/test/contrib/dropbox_test.py index d4e720b61b..38371d0a9c 100644 --- a/test/contrib/dropbox_test.py +++ b/test/contrib/dropbox_test.py @@ -61,7 +61,7 @@ class TestClientDropbox(unittest.TestCase): def setUp(self): self.luigiconn = DropboxClient(DROPBOX_APP_TOKEN) - self.dropbox_api = dropbox.dropbox.Dropbox(DROPBOX_APP_TOKEN) + self.dropbox_api = dropbox.dropbox_client.Dropbox(DROPBOX_APP_TOKEN) self.dropbox_api.files_upload(b'hello', DROPBOX_TEST_SIMPLE_FILE) self.dropbox_api.files_upload(b'hello2', DROPBOX_TEST_FILE_IN_DIR) self.dropbox_api.files_upload(b'hello3', DROPBOX_TEST_FILE_TO_MOVE_ORIG) @@ -163,7 +163,7 @@ def test_lifecycle_of_dirpath_with_several_trailing_mixed_2(self): self.assertFalse(self.luigiconn.exists(DROPBOX_TEST_SIMPLE_DIR_TO_CREATE_AND_DELETE)) def test_mkdir_new_dir_two_slashes(self): - with self.assertRaises(dropbox.dropbox.ApiError): + with self.assertRaises(dropbox.dropbox_client.ApiError): self.luigiconn.mkdir(DROPBOX_TEST_SIMPLE_DIR_TO_CREATE_AND_DELETE + '//') def test_mkdir_recreate_dir(self): @@ -245,7 +245,7 @@ def test_copy(self): class TestDropboxTarget(unittest.TestCase): def setUp(self): self.luigiconn = DropboxClient(DROPBOX_APP_TOKEN) - self.dropbox_api = dropbox.dropbox.Dropbox(DROPBOX_APP_TOKEN) + self.dropbox_api = dropbox.dropbox_client.Dropbox(DROPBOX_APP_TOKEN) self.initial_contents = b'\x00hello\xff\x00-\xe2\x82\x28' # Binary invalid-utf8 sequence self.dropbox_api.files_upload(self.initial_contents, DROPBOX_TEST_SIMPLE_FILE) diff --git a/tox.ini b/tox.ini index ff75cf6f12..d1067e3f30 100644 --- a/tox.ini +++ b/tox.ini @@ -59,7 +59,7 @@ deps = azure-storage<=0.36 datadog==0.22.0 prometheus-client>=0.5.0<0.15 - dropbox: dropbox>=9.3.0<10.0 + dropbox: dropbox>=11.0.0 jsonschema passenv = USER JAVA_HOME POSTGRES_USER DATAPROC_TEST_PROJECT_ID GCS_TEST_PROJECT_ID GCS_TEST_BUCKET GOOGLE_APPLICATION_CREDENTIALS TRAVIS_BUILD_ID TRAVIS TRAVIS_BRANCH TRAVIS_JOB_NUMBER TRAVIS_PULL_REQUEST TRAVIS_JOB_ID TRAVIS_REPO_SLUG TRAVIS_COMMIT CI DROPBOX_APP_TOKEN DOCKERHUB_TOKEN GITHUB_ACTIONS OVERRIDE_SKIP_CI_TESTS