Skip to content

Commit 9025cec

Browse files
committed
Upgrade gspread to 5>=
1 parent 9e2cdcb commit 9025cec

File tree

5 files changed

+21
-18
lines changed

5 files changed

+21
-18
lines changed

gspread_pandas/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from gspread.models import Spreadsheet
1+
from gspread import Spreadsheet
22
from gspread.urls import SPREADSHEETS_API_V4_BASE_URL
33

44
from ._version import __version__, __version_info__

gspread_pandas/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import requests
22
from google.auth.credentials import Credentials
33
from google.auth.transport.requests import AuthorizedSession
4+
from gspread import Spreadsheet
45
from gspread.client import Client as ClientV4
56
from gspread.exceptions import APIError, SpreadsheetNotFound
6-
from gspread.models import Spreadsheet
77
from gspread.utils import finditem
88

99
from gspread_pandas.conf import default_scope, get_creds
@@ -214,7 +214,7 @@ def open(self, title):
214214
:param title: A title of a spreadsheet.
215215
:type title: str
216216
217-
:returns: a :class:`~gspread.models.Spreadsheet` instance.
217+
:returns: a :class:`~gspread.spreadsheet.Spreadsheet` instance.
218218
219219
If there's more than one spreadsheet with same title the first one
220220
will be opened.

gspread_pandas/spread.py

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33

44
import numpy as np
55
import pandas as pd
6+
from gspread import Spreadsheet, Worksheet
67
from gspread.exceptions import (
78
APIError,
89
NoValidUrlKeyFound,
910
SpreadsheetNotFound,
1011
WorksheetNotFound,
1112
)
12-
from gspread.models import Worksheet
13-
from gspread.utils import fill_gaps, rightpad
13+
from gspread.utils import ValueInputOption, ValueRenderOption, fill_gaps, rightpad
1414

1515
from gspread_pandas.client import Client
1616
from gspread_pandas.conf import default_scope
@@ -93,17 +93,16 @@ class Spread:
9393
for the expected format
9494
"""
9595

96-
#: `(gspread.models.Spreadsheet)` - Currently open Spreadsheet
97-
spread = None
96+
#: `(gspread.spreadsheet.Spreadsheet)` - Currently open Spreadsheet
97+
spread: Spreadsheet = None
9898

99-
#: `(gspread.models.Worksheet)` - Currently open Worksheet
100-
sheet = None
99+
#: `(gspread.worksheet.Worksheet)` - Currently open Worksheet
100+
sheet: Worksheet = None
101101

102102
#: `(Client)` - Instance of gspread_pandas
103103
#: :class:`Client <gspread_pandas.client.Client>`
104104
client = None
105105

106-
# chunk range request: https://github.com/burnash/gspread/issues/375
107106
_max_range_chunk_size = 1000000
108107

109108
# `(dict)` - Spreadsheet metadata
@@ -304,7 +303,7 @@ def create_sheet(self, name, rows=1, cols=1):
304303
self.refresh_spread_metadata()
305304
self.open_sheet(name)
306305

307-
def _get_columns(self, cols, value_render_option="FORMATTED_VALUE"):
306+
def _get_columns(self, cols, value_render_option=ValueRenderOption.formatted):
308307
"""
309308
Returns a list of all values in `cols`.
310309
@@ -407,12 +406,16 @@ def sheet_to_df(
407406
header_rows + start_row - 1,
408407
col_names,
409408
unformatted_columns,
410-
"UNFORMATTED_VALUE",
409+
ValueRenderOption.unformatted,
411410
)
412411

413412
if formula_columns:
414413
self._fix_value_render(
415-
df, header_rows + start_row - 1, col_names, formula_columns, "FORMULA"
414+
df,
415+
header_rows + start_row - 1,
416+
col_names,
417+
formula_columns,
418+
ValueRenderOption.formula,
416419
)
417420

418421
df = set_col_names(df, col_names)
@@ -509,13 +512,13 @@ def update_cells(self, start, end, vals, sheet=None, raw_columns=None):
509512
raw_columns, list
510513
), "raw_columns must be a list of ints"
511514
raw_cells = [i for i in cells if i.col in raw_columns]
512-
self.sheet.update_cells(raw_cells, "RAW")
515+
self.sheet.update_cells(raw_cells, ValueInputOption.raw)
513516
else:
514517
raw_cells = []
515518

516519
user_cells = [i for i in cells if i not in raw_cells]
517520
if user_cells:
518-
self.sheet.update_cells(user_cells, "USER_ENTERED")
521+
self.sheet.update_cells(user_cells, ValueInputOption.user_entered)
519522

520523
def _ensure_sheet(self, sheet):
521524
if sheet is not None:
@@ -784,7 +787,7 @@ def _fix_merge_values(self, vals):
784787
----------
785788
vals : list
786789
Values returned by
787-
:meth:`get_all_values() <gspread.models.Sheet.get_all_values()>_`
790+
:meth:`get_all_values() <gspread.worksheet.Worksheet.get_all_values()>_`
788791
789792
790793
Returns

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Reqs
2-
gspread<5.0.0
2+
gspread>=5.0.0
33
pandas>=0.20.0
44
decorator
55
google-auth

tests/spread_test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import pandas as pd
22
import pytest
3-
from gspread.models import Worksheet
3+
from gspread import Worksheet
44

55
from gspread_pandas import Spread, util
66

0 commit comments

Comments
 (0)