Skip to content

Commit fe03dc0

Browse files
committed
Python3.12 support
1 parent 2245984 commit fe03dc0

3 files changed

Lines changed: 41 additions & 49 deletions

File tree

plotplot/gdrive_cloud.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from apiclient.discovery import build
2-
from oauth2client.service_account import ServiceAccountCredentials
2+
from google.oauth2 import service_account
3+
34

45
from googleapiclient.http import MediaIoBaseDownload
56
import os
@@ -12,8 +13,7 @@
1213
class PlotplotGdrive():
1314

1415
def __init__(self):
15-
creds = ServiceAccountCredentials.from_json_keyfile_name(
16-
plotplot_config.get_plotplot_config()['google drive']['google_drive_key_json_path'], SCOPES)
16+
creds = service_account.Credentials.from_service_account_file(plotplot_config.get_plotplot_config()['google drive']['google_drive_key_json_path'], scopes=SCOPES)
1717

1818
# Build the service object.
1919
self.service = build('drive', 'v3', credentials=creds)

plotplot/requirements.txt

Lines changed: 0 additions & 24 deletions
This file was deleted.

pyproject.toml

Lines changed: 38 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ build-backend = "poetry.core.masonry.api"
77
name = "plotplot"
88
version = "1.0.7"
99
description = "Drag and drop plotting, data selection, and filtering"
10-
authors = ["Andrew Barry <barrya@broadinstitute.org>"]
10+
authors = ["Andrew Barry <abarry@gmail.com>"]
1111
license = "GPL-3.0-or-later"
1212
readme = "README.md"
1313
homepage = "https://plotplot.org"
@@ -22,30 +22,46 @@ include = [
2222
]
2323

2424
[tool.poetry.dependencies]
25-
python = ">=3.8"
26-
shapely = "2.0.1"
27-
pandas = "1.5.3"
28-
Flask = "2.1.3"
29-
Flask-Login = "0.4.1"
30-
numba = "*"
31-
numpy = "1.23.5"
32-
gunicorn = "20.1.0"
33-
plotly = "5.13.1"
34-
datashader = "0.15.2"
35-
dask = "2023.1.1"
36-
oauthlib = "3.2.2"
37-
pyOpenSSL = "23.1.1"
38-
requests = "2.28.2"
39-
google-api-python-client = "2.83.0"
40-
google-auth-httplib2 = "0.1.0"
41-
google-auth-oauthlib = "1.0.0"
42-
oauth2client = "4.1.3"
43-
Werkzeug = "2.0.3"
44-
line_profiler = "*"
25+
python = ">=3.10"
26+
27+
# Core stack
28+
numpy = ">=1.26,<2.0"
29+
pandas = ">=2.1"
30+
numba = ">=0.59"
31+
32+
# Viz / rasterization
33+
plotly = "=5.13.1"
34+
datashader = ">=0.16.0"
35+
dask = ">=2024.5.0"
36+
shapely = ">=2.0.3"
37+
38+
# Web
39+
Flask = ">=2.3.3,<3.0" # or use Flask="^3.0" and Werkzeug="^3.0"
40+
Flask-Login = ">=0.6.3"
41+
Werkzeug = ">=2.3,<3.0" # drop if you move to Flask 3.0
42+
43+
# Serving / misc
44+
gunicorn = ">=21.2"
45+
waitress = "*"
46+
47+
# Google / OAuth (remove oauth2client)
48+
oauthlib = ">=3.2.2"
49+
google-api-python-client = ">=2.126"
50+
google-auth-httplib2 = ">=0.2.0"
51+
google-auth-oauthlib = ">=1.2.0"
52+
53+
# TLS / HTTP
54+
pyOpenSSL = ">=24.0"
55+
requests = ">=2.31"
56+
57+
# Utilities
58+
line_profiler = ">=4.1"
4559
anndata = "*"
4660
polyleven = "*"
4761
platformdirs = "*"
48-
waitress = "*"
62+
63+
# Ensure distutils shim during builds
64+
setuptools = ">=68"
4965

5066

5167

0 commit comments

Comments
 (0)