nci-cidc-api-modules 1.2.7__tar.gz → 1.2.8__tar.gz

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.
Files changed (34) hide show
  1. {nci_cidc_api_modules-1.2.7/nci_cidc_api_modules.egg-info → nci_cidc_api_modules-1.2.8}/PKG-INFO +1 -1
  2. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/models.py +23 -9
  3. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8/nci_cidc_api_modules.egg-info}/PKG-INFO +1 -1
  4. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/LICENSE +0 -0
  5. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/MANIFEST.in +0 -0
  6. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/README.md +0 -0
  7. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/config/__init__.py +0 -0
  8. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/config/db.py +0 -0
  9. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/config/logging.py +0 -0
  10. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/config/secrets.py +0 -0
  11. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/config/settings.py +0 -0
  12. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/__init__.py +0 -0
  13. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/files/__init__.py +0 -0
  14. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/files/details.py +0 -0
  15. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/files/facets.py +0 -0
  16. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/migrations.py +0 -0
  17. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/models/schemas.py +0 -0
  18. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/__init__.py +0 -0
  19. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/auth.py +0 -0
  20. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/emails.py +0 -0
  21. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/file_handling.py +0 -0
  22. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/gcloud_client.py +0 -0
  23. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/jose.py +0 -0
  24. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/cidc_api/shared/rest_utils.py +0 -0
  25. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/nci_cidc_api_modules.egg-info/SOURCES.txt +0 -0
  26. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/nci_cidc_api_modules.egg-info/dependency_links.txt +0 -0
  27. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/nci_cidc_api_modules.egg-info/not-zip-safe +0 -0
  28. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/nci_cidc_api_modules.egg-info/requires.txt +0 -0
  29. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/nci_cidc_api_modules.egg-info/top_level.txt +0 -0
  30. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/pyproject.toml +0 -0
  31. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/requirements.modules.txt +0 -0
  32. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/setup.cfg +0 -0
  33. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/setup.py +0 -0
  34. {nci_cidc_api_modules-1.2.7 → nci_cidc_api_modules-1.2.8}/tests/test_api.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nci_cidc_api_modules
3
- Version: 1.2.7
3
+ Version: 1.2.8
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
@@ -28,6 +28,7 @@ __all__ = [
28
28
  "JobFileCategories",
29
29
  "ValidationConfigs",
30
30
  "TRIAL_APPENDIX_A",
31
+ "TRIAL_APPENDIX_A_CELL_THAT_ENDS_THE_HEADER",
31
32
  "REQUEST_LETTER",
32
33
  "ADMIN_FILE_CATEGORIES",
33
34
  "FINAL_JOB_STATUS",
@@ -82,7 +83,6 @@ from sqlalchemy import (
82
83
  Boolean,
83
84
  CheckConstraint,
84
85
  Column,
85
- Date,
86
86
  DateTime,
87
87
  Enum,
88
88
  ForeignKey,
@@ -150,6 +150,10 @@ from ..shared.gcloud_client import (
150
150
  os.environ["TZ"] = "UTC"
151
151
  logger = get_logger(__name__)
152
152
 
153
+ # pylint: disable=protected-access,not-callable,no-value-for-parameter,too-many-positional-arguments
154
+ # pylint: disable=unsubscriptable-object,singleton-comparison,broad-exception-raised,redefined-builtin
155
+ # pylint: disable=arguments-renamed,logging-fstring-interpolation,disable=comparison-with-callable
156
+
153
157
 
154
158
  class FileGroups:
155
159
  pass
@@ -3391,8 +3395,8 @@ class PreprocessedFiles(CommonColumns):
3391
3395
  """
3392
3396
  if job_id is not None:
3393
3397
  return query.filter_by(job_id=job_id)
3394
- else:
3395
- return query.filter(cls.job_id.is_(None))
3398
+
3399
+ return query.filter(cls.job_id.is_(None))
3396
3400
 
3397
3401
 
3398
3402
  INGESTION_JOB_STATUSES = [
@@ -3415,6 +3419,7 @@ INGESTION_JOB_COLORS = {
3415
3419
  }
3416
3420
  # TODO If have "CANCELLED" concept or other final status, add here
3417
3421
  FINAL_JOB_STATUS = ["PUBLISHED"]
3422
+ TRIAL_APPENDIX_A_CELL_THAT_ENDS_THE_HEADER = "Entity"
3418
3423
 
3419
3424
 
3420
3425
  class IngestionJobs(CommonColumns):
@@ -3455,16 +3460,16 @@ class IngestionJobs(CommonColumns):
3455
3460
  df = gcs_xlsx_or_csv_file_to_pandas_dataframe(GOOGLE_CLINICAL_DATA_BUCKET, appendix_a.object_url)
3456
3461
  categories = []
3457
3462
  headers_ended = False
3458
- for index, row in df.iterrows():
3463
+ for _index, row in df.iterrows():
3459
3464
  cell = str(row.iloc[0])
3460
3465
  if headers_ended:
3461
- if not cell == "nan" and cell not in categories and cell != "Specialized_Data":
3466
+ if cell != "nan" and cell not in categories:
3462
3467
  categories.append(cell)
3463
- elif cell == "PATIENT-LEVEL DATA":
3468
+ elif cell == TRIAL_APPENDIX_A_CELL_THAT_ENDS_THE_HEADER:
3464
3469
  headers_ended = True
3465
- if "Data_Dictionary" not in categories:
3470
+ if "data_dictionary" not in categories:
3466
3471
  # Ensure Data_Dictionary is always a required file category
3467
- categories.append("Data_Dictionary")
3472
+ categories.append("data_dictionary")
3468
3473
  return categories
3469
3474
 
3470
3475
  @classmethod
@@ -3608,7 +3613,16 @@ class FileValidationErrors(CommonColumns):
3608
3613
  @classmethod
3609
3614
  @with_default_session
3610
3615
  def get_errors_for_job_sorted_by_file_id(cls, job_id: int, session: Session = None) -> list["FileValidationErrors"]:
3611
- return session.query(cls).filter(cls.job_id == job_id).order_by(cls.file_id.asc()).all()
3616
+ errors = (
3617
+ session.query(cls)
3618
+ .join(PreprocessedFiles)
3619
+ .filter(PreprocessedFiles.status == "current")
3620
+ .filter(cls.job_id == job_id)
3621
+ .order_by(cls.file_id.asc())
3622
+ .all()
3623
+ )
3624
+
3625
+ return errors
3612
3626
 
3613
3627
 
3614
3628
  class ValidationConfigs(CommonColumns):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nci_cidc_api_modules
3
- Version: 1.2.7
3
+ Version: 1.2.8
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