airbyte-source-google-sheets 0.7.3__py3-none-any.whl → 0.8.4__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- {airbyte_source_google_sheets-0.7.3.dist-info → airbyte_source_google_sheets-0.8.4.dist-info}/METADATA +2 -1
- {airbyte_source_google_sheets-0.7.3.dist-info → airbyte_source_google_sheets-0.8.4.dist-info}/RECORD +6 -6
- {airbyte_source_google_sheets-0.7.3.dist-info → airbyte_source_google_sheets-0.8.4.dist-info}/WHEEL +1 -1
- source_google_sheets/client.py +3 -11
- source_google_sheets/source.py +5 -0
- {airbyte_source_google_sheets-0.7.3.dist-info → airbyte_source_google_sheets-0.8.4.dist-info}/entry_points.txt +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)
|
{airbyte_source_google_sheets-0.7.3.dist-info → airbyte_source_google_sheets-0.8.4.dist-info}/RECORD
RENAMED
@@ -1,14 +1,14 @@
|
|
1
1
|
source_google_sheets/__init__.py,sha256=-aGVMRfrgWjYad3_cHofIptEEa5WMQzTvFD92HevQfw,73
|
2
|
-
source_google_sheets/client.py,sha256=
|
2
|
+
source_google_sheets/client.py,sha256=dLujGTU2CPVV8WJwGHEBg3zJZK6xtzuyGTJm7TjAv9I,1916
|
3
3
|
source_google_sheets/helpers.py,sha256=kKXop3YyQ3jPYlWgWW3GmRPxDmnuoHZ4joa3rQLCxUQ,10642
|
4
4
|
source_google_sheets/models/__init__.py,sha256=Z-4MTpxG5t2jGhXzs4PPoIOa83zw3jRnUDx0N9Puv3s,61
|
5
5
|
source_google_sheets/models/spreadsheet.py,sha256=fsHREpPEN36wCzGdqgfJ2EVW40UDZ_lS863A4XT2pGo,1112
|
6
6
|
source_google_sheets/models/spreadsheet_values.py,sha256=y8ytuTqwpziJ2ICl0xhlRWgjMkxTfxOalRd414PMHZM,440
|
7
7
|
source_google_sheets/run.py,sha256=_f5-LNqMzBuHtCD1YoUBxnA0fszgqmdNGcN7y_AmXU0,237
|
8
|
-
source_google_sheets/source.py,sha256=
|
8
|
+
source_google_sheets/source.py,sha256=KIcjUH_-vRNTwHd6rNv8c_jgPBJjXMMmcDvvVyng_OA,13504
|
9
9
|
source_google_sheets/spec.yaml,sha256=WrPdH2xLCdyM-kY-pRqbwICcNPhv8nqnb2gdbslTsaQ,5141
|
10
10
|
source_google_sheets/utils.py,sha256=ZB5lboyffiuuQdSarqe8AqBGEyiQpxiOfxqcU7Ght8A,2289
|
11
|
-
airbyte_source_google_sheets-0.
|
12
|
-
airbyte_source_google_sheets-0.
|
13
|
-
airbyte_source_google_sheets-0.
|
14
|
-
airbyte_source_google_sheets-0.
|
11
|
+
airbyte_source_google_sheets-0.8.4.dist-info/METADATA,sha256=mIdbrQljTBznf31l7Xrr5Zy63tsNCI3LctSDj51bRhE,5539
|
12
|
+
airbyte_source_google_sheets-0.8.4.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
13
|
+
airbyte_source_google_sheets-0.8.4.dist-info/entry_points.txt,sha256=Dtsfjohe5IPUFyqojk49SIoP7CifCTlNLG_pgivzppo,69
|
14
|
+
airbyte_source_google_sheets-0.8.4.dist-info/RECORD,,
|
source_google_sheets/client.py
CHANGED
@@ -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
|
source_google_sheets/source.py
CHANGED
@@ -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
|