nci-cidc-api-modules 1.2.45__py3-none-any.whl → 1.2.53__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- boot.py +14 -0
- cidc_api/__init__.py +1 -1
- cidc_api/config/settings.py +4 -10
- cidc_api/models/errors.py +7 -0
- cidc_api/models/models.py +14 -2
- cidc_api/models/pydantic/base.py +63 -2
- cidc_api/models/pydantic/stage1/adverse_event.py +51 -24
- cidc_api/models/pydantic/stage1/comorbidity.py +15 -8
- cidc_api/models/pydantic/stage1/demographic.py +45 -28
- cidc_api/models/pydantic/stage1/disease.py +100 -58
- cidc_api/models/pydantic/stage1/exposure.py +14 -8
- cidc_api/models/pydantic/stage1/medical_history.py +15 -8
- cidc_api/models/pydantic/stage1/other_malignancy.py +17 -11
- cidc_api/models/pydantic/stage1/participant.py +26 -14
- cidc_api/models/pydantic/stage1/radiotherapy_dose.py +27 -14
- cidc_api/models/pydantic/stage1/response.py +41 -22
- cidc_api/models/pydantic/stage1/response_by_system.py +138 -30
- cidc_api/models/pydantic/stage1/surgery.py +15 -7
- cidc_api/models/pydantic/stage1/therapy_agent_dose.py +27 -14
- cidc_api/models/pydantic/stage1/treatment.py +28 -14
- cidc_api/shared/file_handling.py +2 -0
- cidc_api/shared/gcloud_client.py +20 -2
- {nci_cidc_api_modules-1.2.45.dist-info → nci_cidc_api_modules-1.2.53.dist-info}/METADATA +13 -12
- {nci_cidc_api_modules-1.2.45.dist-info → nci_cidc_api_modules-1.2.53.dist-info}/RECORD +27 -25
- {nci_cidc_api_modules-1.2.45.dist-info → nci_cidc_api_modules-1.2.53.dist-info}/WHEEL +1 -1
- {nci_cidc_api_modules-1.2.45.dist-info → nci_cidc_api_modules-1.2.53.dist-info}/top_level.txt +1 -0
- {nci_cidc_api_modules-1.2.45.dist-info → nci_cidc_api_modules-1.2.53.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
from
|
|
2
|
-
|
|
3
|
-
from pydantic import model_validator
|
|
1
|
+
from cidc_api.models.pydantic.base import forced_validator, forced_validators
|
|
4
2
|
|
|
3
|
+
from cidc_api.models.errors import ValueLocError
|
|
5
4
|
from cidc_api.models.pydantic.base import Base
|
|
6
5
|
from cidc_api.models.types import YNU, OffTreatmentReason
|
|
7
6
|
|
|
8
7
|
|
|
8
|
+
@forced_validators
|
|
9
9
|
class Treatment(Base):
|
|
10
10
|
__data_category__ = "treatment"
|
|
11
11
|
__cardinality__ = "many"
|
|
@@ -37,14 +37,28 @@ class Treatment(Base):
|
|
|
37
37
|
# If "Other" is selected for "off_treatment_reason", provide a description of the reason.
|
|
38
38
|
off_treatment_reason_other: str | None = None
|
|
39
39
|
|
|
40
|
-
@
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
40
|
+
@forced_validator
|
|
41
|
+
@classmethod
|
|
42
|
+
def validate_off_treatment_reason_cr(cls, data, info) -> None:
|
|
43
|
+
off_treatment = data.get("off_treatment", None)
|
|
44
|
+
off_treatment_reason = data.get("off_treatment_reason", None)
|
|
45
|
+
|
|
46
|
+
if off_treatment == "Yes" and not off_treatment_reason:
|
|
47
|
+
raise ValueLocError(
|
|
48
|
+
'If off_treatment is "Yes", please provide off_treatment_reason.',
|
|
49
|
+
loc="off_treatment_reason",
|
|
50
|
+
)
|
|
51
|
+
return off_treatment_reason
|
|
52
|
+
|
|
53
|
+
@forced_validator
|
|
54
|
+
@classmethod
|
|
55
|
+
def validate_off_treatment_reason_other_cr(cls, data, info) -> None:
|
|
56
|
+
off_treatment_reason = data.get("off_treatment_reason", None)
|
|
57
|
+
off_treatment_reason_other = data.get("off_treatment_reason_other", None)
|
|
58
|
+
|
|
59
|
+
if off_treatment_reason == "Other" and not off_treatment_reason_other:
|
|
60
|
+
raise ValueLocError(
|
|
61
|
+
'If off_treatment_reason is "Other", please provide off_treatment_reason_other.',
|
|
62
|
+
loc="off_treatment_reason_other",
|
|
63
|
+
)
|
|
64
|
+
return off_treatment_reason_other
|
cidc_api/shared/file_handling.py
CHANGED
cidc_api/shared/gcloud_client.py
CHANGED
|
@@ -61,6 +61,7 @@ from ..config.settings import (
|
|
|
61
61
|
GOOGLE_HL_CLINICAL_VALIDATION_TOPIC,
|
|
62
62
|
GOOGLE_DL_CLINICAL_VALIDATION_TOPIC,
|
|
63
63
|
GOOGLE_ASSAY_METADATA_VALIDATION_TOPIC,
|
|
64
|
+
GOOGLE_CLINICAL_DATA_INGESTION_PROCESSING_TOPIC,
|
|
64
65
|
TESTING,
|
|
65
66
|
ENV,
|
|
66
67
|
IS_EMAIL_ON,
|
|
@@ -479,13 +480,24 @@ async def async_gcs_files_to_pandas_dataframes(bucket_name: str, blob_names: Lis
|
|
|
479
480
|
|
|
480
481
|
for blob_name, contents in zip(blob_names, all_contents):
|
|
481
482
|
extension = blob_name.split(".")[-1]
|
|
482
|
-
|
|
483
|
+
try:
|
|
484
|
+
dataframes.append(prepare_dataframe(extension, contents))
|
|
485
|
+
except pd.errors.EmptyDataError:
|
|
486
|
+
logger.warning(f"The dataframe retrieved from {blob_name} was empty!")
|
|
483
487
|
return dataframes
|
|
484
488
|
|
|
485
489
|
|
|
490
|
+
async def async_gcs_files_to_bytes(bucket_name: str, blob_names: List[str]) -> List[DataFrame]:
|
|
491
|
+
"""Async reads a XLSX or CSV files from Google Cloud Storage into a list of raw bytes"""
|
|
492
|
+
|
|
493
|
+
all_contents = await asyncio.gather(
|
|
494
|
+
*[async_get_file_bytes_from_gcs(bucket_name, blob_name) for blob_name in blob_names]
|
|
495
|
+
)
|
|
496
|
+
return all_contents
|
|
497
|
+
|
|
498
|
+
|
|
486
499
|
async def async_get_file_bytes_from_gcs(bucket_name: str, blob_name: str) -> io.BytesIO:
|
|
487
500
|
"""Async reads a file from Google Cloud Storage and returns it as BytesIO."""
|
|
488
|
-
|
|
489
501
|
async with Storage() as client:
|
|
490
502
|
sheet_data = await client.download(bucket_name, blob_name)
|
|
491
503
|
return io.BytesIO(sheet_data)
|
|
@@ -1056,6 +1068,12 @@ def publish_assay_metadata_validation(job_id: int) -> None:
|
|
|
1056
1068
|
_report = _encode_and_publish(str(job_id), GOOGLE_ASSAY_METADATA_VALIDATION_TOPIC)
|
|
1057
1069
|
|
|
1058
1070
|
|
|
1071
|
+
def publish_clinical_data_ingestion(job_id: int) -> None:
|
|
1072
|
+
"""Start ingestion of clinical data job"""
|
|
1073
|
+
# Start asynchronously
|
|
1074
|
+
_report = _encode_and_publish(str(job_id), GOOGLE_CLINICAL_DATA_INGESTION_PROCESSING_TOPIC)
|
|
1075
|
+
|
|
1076
|
+
|
|
1059
1077
|
def send_email(to_emails: List[str], subject: str, html_content: str, **kw) -> None:
|
|
1060
1078
|
"""
|
|
1061
1079
|
Publish an email-to-send to the emails topic.
|
|
@@ -1,30 +1,31 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: nci_cidc_api_modules
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.53
|
|
4
4
|
Summary: SQLAlchemy data models and configuration tools used in the NCI CIDC API
|
|
5
5
|
Home-page: https://github.com/NCI-CIDC/cidc-api-gae
|
|
6
6
|
License: MIT license
|
|
7
7
|
Requires-Python: >=3.13
|
|
8
8
|
Description-Content-Type: text/markdown
|
|
9
9
|
License-File: LICENSE
|
|
10
|
-
Requires-Dist:
|
|
11
|
-
Requires-Dist:
|
|
10
|
+
Requires-Dist: cachetools>=6.2.4
|
|
11
|
+
Requires-Dist: certifi>=2026.1.4
|
|
12
|
+
Requires-Dist: cloud-sql-python-connector[pg8000]>=1.20.0
|
|
12
13
|
Requires-Dist: flask>=3.1.2
|
|
13
14
|
Requires-Dist: flask-migrate>=4.1.0
|
|
14
15
|
Requires-Dist: flask-sqlalchemy>=3.1.1
|
|
15
16
|
Requires-Dist: flask-talisman>=0.7.0
|
|
16
17
|
Requires-Dist: gcloud-aio-storage~=9.6.1
|
|
17
|
-
Requires-Dist: google-
|
|
18
|
-
Requires-Dist: google-
|
|
19
|
-
Requires-Dist: google-cloud-bigquery>=3.
|
|
18
|
+
Requires-Dist: google-api-python-client>=2.188.0
|
|
19
|
+
Requires-Dist: google-auth==2.47.0
|
|
20
|
+
Requires-Dist: google-cloud-bigquery>=3.40.0
|
|
20
21
|
Requires-Dist: google-cloud-pubsub>=2.34.0
|
|
21
22
|
Requires-Dist: google-cloud-secret-manager>=2.26.0
|
|
22
|
-
Requires-Dist: google-cloud-storage>=3.
|
|
23
|
+
Requires-Dist: google-cloud-storage>=3.8.0
|
|
23
24
|
Requires-Dist: jinja2>=3.1.6
|
|
24
|
-
Requires-Dist: joserfc>=1.6.
|
|
25
|
-
Requires-Dist: marshmallow>=4.
|
|
25
|
+
Requires-Dist: joserfc>=1.6.1
|
|
26
|
+
Requires-Dist: marshmallow>=4.2.0
|
|
26
27
|
Requires-Dist: marshmallow-sqlalchemy>=1.4.2
|
|
27
|
-
Requires-Dist: numpy>=2.4.
|
|
28
|
+
Requires-Dist: numpy>=2.4.1
|
|
28
29
|
Requires-Dist: packaging>=25.0
|
|
29
30
|
Requires-Dist: pandas>=2.3.3
|
|
30
31
|
Requires-Dist: pyarrow>=22.0.0
|
|
@@ -33,7 +34,7 @@ Requires-Dist: python-dotenv>=1.2.1
|
|
|
33
34
|
Requires-Dist: requests>=2.32.5
|
|
34
35
|
Requires-Dist: sqlalchemy>=2.0.45
|
|
35
36
|
Requires-Dist: sqlalchemy-mixins~=2.0.5
|
|
36
|
-
Requires-Dist: werkzeug>=3.1.
|
|
37
|
+
Requires-Dist: werkzeug>=3.1.5
|
|
37
38
|
Requires-Dist: opentelemetry-api>=1.39.1
|
|
38
39
|
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc>=1.39.1
|
|
39
40
|
Requires-Dist: opentelemetry-sdk>=1.39.1
|
|
@@ -42,7 +43,7 @@ Requires-Dist: opentelemetry-instrumentation-requests>=0.59b0
|
|
|
42
43
|
Requires-Dist: opentelemetry-instrumentation-sqlalchemy>=0.59b0
|
|
43
44
|
Requires-Dist: opentelemetry-exporter-gcp-trace>=1.11.0
|
|
44
45
|
Requires-Dist: opentelemetry-propagator-gcp>=1.11.0
|
|
45
|
-
Requires-Dist: nci-cidc-schemas==0.28.
|
|
46
|
+
Requires-Dist: nci-cidc-schemas==0.28.12
|
|
46
47
|
Dynamic: description
|
|
47
48
|
Dynamic: description-content-type
|
|
48
49
|
Dynamic: home-page
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
boot.py,sha256=oS_16OgU34iDxyFNpJl5rb5KbfbsCXroUCNLwVPxPNg,416
|
|
2
|
+
cidc_api/__init__.py,sha256=X7WSWc7i6nvghhrqNxUUTAI8_CLJ7jRVdust93y4RdY,23
|
|
2
3
|
cidc_api/telemetry.py,sha256=LuZWkG8CKCn23O41RTNxEOQwMmfpp-fQ6zSInZhVJg8,3333
|
|
3
4
|
cidc_api/config/__init__.py,sha256=5mX8GAPxUKV84iS-aGOoE-4m68LsOCGCDptXNdlgvj0,148
|
|
4
5
|
cidc_api/config/db.py,sha256=mEz8ugjvRNGylCqDYHaaMqaZfDh7sbd76BowmfBvq5c,2428
|
|
5
6
|
cidc_api/config/logging.py,sha256=abhVYtn8lfhIt0tyV2WHFgSmp_s2eeJh7kodB6LH4J0,1149
|
|
6
7
|
cidc_api/config/secrets.py,sha256=jRFj7W43pWuPf9DZQLCKF7WPXf5cUv-BAaS3ASqhV_Q,1481
|
|
7
|
-
cidc_api/config/settings.py,sha256=
|
|
8
|
+
cidc_api/config/settings.py,sha256=IlOSJhSyYYK4XQQ4uBdD58kXO-a2AHPWTSN1AT95b9Y,4545
|
|
8
9
|
cidc_api/models/__init__.py,sha256=bl445G8Zic9YbhZ8ZBni07wtBMhLJRMBA-JqjLxx2bw,66
|
|
9
10
|
cidc_api/models/data.py,sha256=TyVXk5jJO1NN05CLqejLf5BPp6yLSNNxPmFOgXUnA1M,1313
|
|
11
|
+
cidc_api/models/errors.py,sha256=UncRrh-4v0CR5mpLO0erWD1y9ctus3Nk6XOSvrTjfco,338
|
|
10
12
|
cidc_api/models/migrations.py,sha256=UlS5How3J4ryaRuZT6F5VQtAKikkl0LTv9MgMO_ltiQ,11161
|
|
11
|
-
cidc_api/models/models.py,sha256=
|
|
13
|
+
cidc_api/models/models.py,sha256=RycbGNQHIud9mqCyIH_yrnN7PVSFwbUCjP6pe6sX5VA,154106
|
|
12
14
|
cidc_api/models/schemas.py,sha256=6IE2dJoEMcMbi0Vr1V3cYKnPKU0hv9vRKBixOZHe88s,2766
|
|
13
15
|
cidc_api/models/types.py,sha256=WVOTEH61FH5aGVwRbEcfNOce8NLjiEnl1ixtPWav2OA,30058
|
|
14
16
|
cidc_api/models/db/stage1/__init__.py,sha256=zsxOSoogzL_xZ8B5OwcwLXvAmm6g2GYx1Zf6LLw8dq8,1917
|
|
@@ -79,32 +81,32 @@ cidc_api/models/db/stage2/trial_orm.py,sha256=7_5kA1Yv80GFQykK8AIlFC0vtrsb2H8xLs
|
|
|
79
81
|
cidc_api/models/files/__init__.py,sha256=8BMTnUSHzUbz0lBeEQY6NvApxDD3GMWMduoVMos2g4Y,213
|
|
80
82
|
cidc_api/models/files/details.py,sha256=sZkGM7iEV4-J6IDQCdiMV6KBDLbPxCOqUMaU3aY9rX8,65153
|
|
81
83
|
cidc_api/models/files/facets.py,sha256=vieZ3z_tYB29NqtvNzvKqajVwxM5ZLLZKeyQTq5lheU,33776
|
|
82
|
-
cidc_api/models/pydantic/base.py,sha256=
|
|
84
|
+
cidc_api/models/pydantic/base.py,sha256=sL_0PwEH2vS8BMT_w-zL7CPeaU-R7ih5afRigX6k2DM,4069
|
|
83
85
|
cidc_api/models/pydantic/stage1/__init__.py,sha256=H-NDjCd8isHTgZ7sqz-MIbzC-PpW1kEtR-x-Dyc8r6Q,1667
|
|
84
86
|
cidc_api/models/pydantic/stage1/additional_treatment.py,sha256=TFVzjd1NPLSfH9UnL2W3aZhpZSzDsg97j9IK8t882YA,1050
|
|
85
|
-
cidc_api/models/pydantic/stage1/adverse_event.py,sha256=
|
|
87
|
+
cidc_api/models/pydantic/stage1/adverse_event.py,sha256=ZW5iVnMmX7NtZcsgDAjzPorWPZDSJSmTXGK1EsU9AaQ,5167
|
|
86
88
|
cidc_api/models/pydantic/stage1/baseline_clinical_assessment.py,sha256=5FYvtOVf_nIK1h3xTs3vQgJe2ivQSVHt_wfrTSDgVxU,1119
|
|
87
|
-
cidc_api/models/pydantic/stage1/comorbidity.py,sha256=
|
|
89
|
+
cidc_api/models/pydantic/stage1/comorbidity.py,sha256=IfxFb0dZAdCY--Ze5kiZ3CrzVKJtuknpcpvrQ3ki-gI,1769
|
|
88
90
|
cidc_api/models/pydantic/stage1/consent_group.py,sha256=aP_nd0GKK6K7VH-6IZRSDDX2RxFM_j9B36FIRGwysOU,1216
|
|
89
|
-
cidc_api/models/pydantic/stage1/demographic.py,sha256=
|
|
90
|
-
cidc_api/models/pydantic/stage1/disease.py,sha256=
|
|
91
|
-
cidc_api/models/pydantic/stage1/exposure.py,sha256=
|
|
91
|
+
cidc_api/models/pydantic/stage1/demographic.py,sha256=9r3AFlymwFLwbV0YCHQt1tqTc1g2ywT3zCD66StkYHA,6872
|
|
92
|
+
cidc_api/models/pydantic/stage1/disease.py,sha256=G8d2iqsMhmDA3uxjOitxzmlFKIRxyUMp-o-H7eUfZFg,9250
|
|
93
|
+
cidc_api/models/pydantic/stage1/exposure.py,sha256=bd9gUmOQ7ge-xvoxD17pX95MKxfHKD2xNaFEJAMAkn4,1571
|
|
92
94
|
cidc_api/models/pydantic/stage1/gvhd_diagnosis_acute.py,sha256=jVMoWuLfspOZtOpC7rg1EzdvEAg8qEabcTaS6RRobZ8,1395
|
|
93
95
|
cidc_api/models/pydantic/stage1/gvhd_diagnosis_chronic.py,sha256=SRwkAL07YyIZM4bYCqm01aKqSvj3yRmpsqFKxAZEZoM,1382
|
|
94
96
|
cidc_api/models/pydantic/stage1/gvhd_organ_acute.py,sha256=VxlNGRJYjm9tW2lyLll8pD0t9JZs18gicnH-Ci_nR2I,771
|
|
95
97
|
cidc_api/models/pydantic/stage1/gvhd_organ_chronic.py,sha256=Fnp1Qm-ZDDtDLrgOAnEOUnQVNWI9WrTSomiFPStGmjc,810
|
|
96
|
-
cidc_api/models/pydantic/stage1/medical_history.py,sha256=
|
|
97
|
-
cidc_api/models/pydantic/stage1/other_malignancy.py,sha256=
|
|
98
|
-
cidc_api/models/pydantic/stage1/participant.py,sha256=
|
|
98
|
+
cidc_api/models/pydantic/stage1/medical_history.py,sha256=z-cE_ChyWUKTvWjVhKMUAYvap9YfpZn6Z2BiHhBXx6g,2000
|
|
99
|
+
cidc_api/models/pydantic/stage1/other_malignancy.py,sha256=VIzhbkauaDfZdPxhTYpqNtwYBxE_4osE9wyZ67LQJx4,2622
|
|
100
|
+
cidc_api/models/pydantic/stage1/participant.py,sha256=QfRkK2okY7nM84y9QMK12kZLURBGk-HNWWHL4pQZjec,2655
|
|
99
101
|
cidc_api/models/pydantic/stage1/prior_treatment.py,sha256=axhyPHwYCoIvcIonjyPJ95HUyaAXqIuOd6hhoDM3LJU,2101
|
|
100
|
-
cidc_api/models/pydantic/stage1/radiotherapy_dose.py,sha256=
|
|
101
|
-
cidc_api/models/pydantic/stage1/response.py,sha256=
|
|
102
|
-
cidc_api/models/pydantic/stage1/response_by_system.py,sha256=
|
|
102
|
+
cidc_api/models/pydantic/stage1/radiotherapy_dose.py,sha256=gDaL1OQuSuTauml6HafBiVvBn8gcynS3G1fa9KNhEPA,3833
|
|
103
|
+
cidc_api/models/pydantic/stage1/response.py,sha256=TJlKmUz9SypbbDnv6iSmLb4KPEuFUPe9Q8iNSGsLbfI,3491
|
|
104
|
+
cidc_api/models/pydantic/stage1/response_by_system.py,sha256=gjyo_jDyc2xHNNrUwoFqH3Fz51v2eSr3JRHkH0xwVqI,9851
|
|
103
105
|
cidc_api/models/pydantic/stage1/specimen.py,sha256=scDekZ-RtXOQTTLburhqT3RF4KM34iY9NAV1wYi_HSg,1281
|
|
104
106
|
cidc_api/models/pydantic/stage1/stem_cell_transplant.py,sha256=XsDVUksqbIprPxHwLlwHGyji4jsIFNMcIk-S0H4rDnQ,1228
|
|
105
|
-
cidc_api/models/pydantic/stage1/surgery.py,sha256=
|
|
106
|
-
cidc_api/models/pydantic/stage1/therapy_agent_dose.py,sha256=
|
|
107
|
-
cidc_api/models/pydantic/stage1/treatment.py,sha256=
|
|
107
|
+
cidc_api/models/pydantic/stage1/surgery.py,sha256=sHPzYMNusYIQrC6gjWopwxo0j9BNOq_Tcl6HKAMvuAQ,2421
|
|
108
|
+
cidc_api/models/pydantic/stage1/therapy_agent_dose.py,sha256=XX7JM4CdvTuAsbI5rI4wYDcbevP46BetTk_z7N_EL-M,3527
|
|
109
|
+
cidc_api/models/pydantic/stage1/treatment.py,sha256=eEjCcmkLdPmS2kg9dtUm3pt9apo1sRypBbte_xUVAYU,2607
|
|
108
110
|
cidc_api/models/pydantic/stage1/trial.py,sha256=EFsMVMxxHbPeaBb6JG9JpX1qjtoho2t-GZnaI0gsYrY,1859
|
|
109
111
|
cidc_api/models/pydantic/stage2/__init__.py,sha256=OQRG5wFkNsyAU_0KI1W5PDn8pBDe1EJDcgKZ19shh_g,2331
|
|
110
112
|
cidc_api/models/pydantic/stage2/additional_treatment.py,sha256=TFVzjd1NPLSfH9UnL2W3aZhpZSzDsg97j9IK8t882YA,1050
|
|
@@ -153,13 +155,13 @@ cidc_api/shared/assay_handling.py,sha256=zzWSqQ-ddLVzX5IuHvsaSib2H1lnjXpo9Lbxaoq
|
|
|
153
155
|
cidc_api/shared/auth.py,sha256=EIP9AKokLNrI79Fkpv3P7WdzaddJIsuGGICc1W494X0,9110
|
|
154
156
|
cidc_api/shared/email_layout.html,sha256=pBoTNw3ACHH-ncZFaNvcy5bXMqPwizR78usb0uCYtIc,7670
|
|
155
157
|
cidc_api/shared/emails.py,sha256=8kNFEaSnKpY-GX_iE59QUhSp3c4_uzy3SpHYt2QjuqI,6121
|
|
156
|
-
cidc_api/shared/file_handling.py,sha256=
|
|
157
|
-
cidc_api/shared/gcloud_client.py,sha256=
|
|
158
|
+
cidc_api/shared/file_handling.py,sha256=9MZXx5RfXO3A_pXf8Ulb7DQEuyp9j12eO9ad-PcTBXo,5908
|
|
159
|
+
cidc_api/shared/gcloud_client.py,sha256=EJ2ZzZ0gwDOZx18PEzXil4F-jpruacShkVIoecw8qzY,40751
|
|
158
160
|
cidc_api/shared/jose.py,sha256=-qzGzEDAlokEp9E7WtBtQkXyyfPWTYXlwYpCqVJWmqM,1830
|
|
159
161
|
cidc_api/shared/rest_utils.py,sha256=RwR30WOUAYCxL7V-i2totEyeriG30GbBDvBcpLXhM9w,6594
|
|
160
162
|
cidc_api/shared/utils.py,sha256=-gLnzxCR9E6h0plt2xrNisUG5_Y6GhhVwz3DgDIzpvs,367
|
|
161
|
-
nci_cidc_api_modules-1.2.
|
|
162
|
-
nci_cidc_api_modules-1.2.
|
|
163
|
-
nci_cidc_api_modules-1.2.
|
|
164
|
-
nci_cidc_api_modules-1.2.
|
|
165
|
-
nci_cidc_api_modules-1.2.
|
|
163
|
+
nci_cidc_api_modules-1.2.53.dist-info/licenses/LICENSE,sha256=pNYWVTHaYonnmJyplmeAp7tQAjosmDpAWjb34jjv7Xs,1102
|
|
164
|
+
nci_cidc_api_modules-1.2.53.dist-info/METADATA,sha256=JWWYI8eyF0_QbM-bqoNO5N_jsnoocDjNiwKR1Ba4x9Y,40301
|
|
165
|
+
nci_cidc_api_modules-1.2.53.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
166
|
+
nci_cidc_api_modules-1.2.53.dist-info/top_level.txt,sha256=BSJqF6ura8-bWCKZvarvQEKvidMM05lH0bLQsNOrI0o,14
|
|
167
|
+
nci_cidc_api_modules-1.2.53.dist-info/RECORD,,
|
{nci_cidc_api_modules-1.2.45.dist-info → nci_cidc_api_modules-1.2.53.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|