airbyte-source-google-sheets 0.7.3__tar.gz → 0.8.4__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/PKG-INFO +2 -1
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/pyproject.toml +1 -1
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/client.py +3 -11
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/source.py +5 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/README.md +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/__init__.py +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/helpers.py +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/models/__init__.py +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/models/spreadsheet.py +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/models/spreadsheet_values.py +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/run.py +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/spec.yaml +0 -0
- {airbyte_source_google_sheets-0.7.3 → airbyte_source_google_sheets-0.8.4}/source_google_sheets/utils.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: airbyte-source-google-sheets
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.8.4
|
4
4
|
Summary: Source implementation for Google Sheets.
|
5
5
|
Home-page: https://airbyte.com
|
6
6
|
License: Elv2
|
@@ -12,6 +12,7 @@ Classifier: Programming Language :: Python :: 3
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.10
|
13
13
|
Classifier: Programming Language :: Python :: 3.11
|
14
14
|
Classifier: Programming Language :: Python :: 3.12
|
15
|
+
Classifier: Programming Language :: Python :: 3.13
|
15
16
|
Requires-Dist: Unidecode (==1.3.8)
|
16
17
|
Requires-Dist: airbyte-cdk (>=4,<5)
|
17
18
|
Requires-Dist: google-api-python-client (==2.114.0)
|
@@ -33,24 +33,16 @@ class GoogleSheetsClient:
|
|
33
33
|
def __init__(self, credentials: Dict[str, str], scopes: List[str] = SCOPES):
|
34
34
|
self.client = Helpers.get_authenticated_sheets_client(credentials, scopes)
|
35
35
|
|
36
|
-
def _create_range(self, sheet, row_cursor):
|
37
|
-
range = f"{sheet}!{row_cursor}:{row_cursor + self.Backoff.row_batch_size}"
|
38
|
-
return range
|
39
|
-
|
40
36
|
@backoff.on_exception(backoff.expo, errors.HttpError, max_time=120, giveup=Backoff.give_up, on_backoff=Backoff.increase_row_batch_size)
|
41
37
|
def get(self, **kwargs):
|
42
38
|
return self.client.get(**kwargs).execute()
|
43
39
|
|
44
|
-
@backoff.on_exception(backoff.expo, errors.HttpError, max_time=120, giveup=Backoff.give_up, on_backoff=Backoff.increase_row_batch_size)
|
45
|
-
def create(self, **kwargs):
|
46
|
-
return self.client.create(**kwargs).execute()
|
47
|
-
|
48
40
|
@backoff.on_exception(backoff.expo, errors.HttpError, max_time=120, giveup=Backoff.give_up, on_backoff=Backoff.increase_row_batch_size)
|
49
41
|
def get_values(self, **kwargs):
|
50
42
|
range = self._create_range(kwargs.pop("sheet"), kwargs.pop("row_cursor"))
|
51
43
|
logger.info(f"Fetching range {range}")
|
52
44
|
return self.client.values().batchGet(ranges=range, **kwargs).execute()
|
53
45
|
|
54
|
-
|
55
|
-
|
56
|
-
return
|
46
|
+
def _create_range(self, sheet, row_cursor):
|
47
|
+
range = f"{sheet}!{row_cursor}:{row_cursor + self.Backoff.row_batch_size}"
|
48
|
+
return range
|
@@ -259,6 +259,11 @@ class SourceGoogleSheets(Source):
|
|
259
259
|
) from e
|
260
260
|
else:
|
261
261
|
logger.info(f"{e.status_code}: {e.reason}. {error_description}")
|
262
|
+
raise AirbyteTracedException(
|
263
|
+
message=f"Stopped syncing process. {error_description}",
|
264
|
+
internal_message=error_description,
|
265
|
+
failure_type=FailureType.transient_error,
|
266
|
+
) from e
|
262
267
|
finally:
|
263
268
|
logger.info(f"Finished syncing spreadsheet {spreadsheet_id}")
|
264
269
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|