aplos-nca-saas-sdk 0.0.17__tar.gz → 0.0.18__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 (69) hide show
  1. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/PKG-INFO +1 -1
  2. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/pyproject.toml +1 -1
  3. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/nca_execution_config.py +16 -1
  4. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/tests/nca_analysis_test.py +2 -1
  5. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_analysis.py +3 -0
  6. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/utilities/commandline_args.py +2 -2
  7. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/utilities/environment_services.py +4 -3
  8. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/version.py +1 -1
  9. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/.gitignore +0 -0
  10. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/.pypirc +0 -0
  11. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/.vscode/launch.json +0 -0
  12. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/.vscode/settings.json +0 -0
  13. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/LICENSE +0 -0
  14. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/README.md +0 -0
  15. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/devops/pypi/build.py +0 -0
  16. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/devops/pypi/readme.md +0 -0
  17. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/devops/requirements.txt +0 -0
  18. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/docs/images/API_Configuration_blur.png +0 -0
  19. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/docs/images/aplos-nca-commandline-cropped.png +0 -0
  20. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/docs/images/aplos-nca-commandline.png +0 -0
  21. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/mypy.ini +0 -0
  22. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/mypy_checks.py +0 -0
  23. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/readme.md +0 -0
  24. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/requirements.dev.txt +0 -0
  25. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/requirements.txt +0 -0
  26. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/run-checks.sh +0 -0
  27. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/__init__.py +0 -0
  28. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/_config_base.py +0 -0
  29. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/app_settings_config.py +0 -0
  30. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/config_sample.json +0 -0
  31. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/file_upload_config.py +0 -0
  32. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/login_config.py +0 -0
  33. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/configs/nca_validation_config.py +0 -0
  34. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/example_main.py +0 -0
  35. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/executions/config1.json +0 -0
  36. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/uploads/input1.csv +0 -0
  37. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/uploads/input1.dat +0 -0
  38. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/uploads/input1.sas7bdat +0 -0
  39. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/uploads/input1.xls +0 -0
  40. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/uploads/input1.xlsx +0 -0
  41. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/files/uploads/input1.xpt +0 -0
  42. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/integration_test_base.py +0 -0
  43. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/integration_test_configurations.py +0 -0
  44. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/integration_test_factory.py +0 -0
  45. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/integration_test_response.py +0 -0
  46. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/integration_test_suite.py +0 -0
  47. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/readme.md +0 -0
  48. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/tests/app_configuration_test.py +0 -0
  49. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/tests/app_login_test.py +0 -0
  50. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/tests/file_upload_test.py +0 -0
  51. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/integration_testing/tests/nca_analysis_validation_test.py +0 -0
  52. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/_api_base.py +0 -0
  53. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/aws_cognito.py +0 -0
  54. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/aws_s3_presigned_payload.py +0 -0
  55. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/aws_s3_presigned_upload.py +0 -0
  56. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_app_configuration.py +0 -0
  57. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_authenticator.py +0 -0
  58. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_endpoints.py +0 -0
  59. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_file_download.py +0 -0
  60. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_file_upload.py +0 -0
  61. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/nca_resources/nca_validations.py +0 -0
  62. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/run_analysis_execution.py +0 -0
  63. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/sample_files/analysis_files/single_ev/config.json +0 -0
  64. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/sample_files/analysis_files/single_ev/input.csv +0 -0
  65. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/sample_files/analysis_files/single_ev/meta_data.json +0 -0
  66. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/utilities/environment_vars.py +0 -0
  67. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/utilities/file_utility.py +0 -0
  68. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/src/aplos_nca_saas_sdk/utilities/http_utility.py +0 -0
  69. {aplos_nca_saas_sdk-0.0.17 → aplos_nca_saas_sdk-0.0.18}/tests/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aplos_nca_saas_sdk
3
- Version: 0.0.17
3
+ Version: 0.0.18
4
4
  Summary: Aplos NCA SaaS SDK
5
5
  Project-URL: Homepage, https://aplosanalytics.com/
6
6
  Project-URL: Documentation, https://docs.aplosanalytics.com/
@@ -26,7 +26,7 @@ keywords = [
26
26
  "Clinical Trials"
27
27
  ]
28
28
 
29
- version = "0.0.17"
29
+ version = "0.0.18"
30
30
  authors = [
31
31
  { name="Eric Wilson", email="eric.wilson@aplosanalytics.com" }
32
32
  ]
@@ -37,6 +37,9 @@ class NCAExecutionConfig(ConfigBase):
37
37
  data_processing: str | dict | None = None,
38
38
  post_processing: str | dict | None = None,
39
39
  full_payload: str | dict | None = None,
40
+ wait_for_results: bool = True,
41
+ max_wait_in_seconds: int = 600,
42
+ enabled: bool = True
40
43
  ):
41
44
  super().__init__()
42
45
 
@@ -58,6 +61,9 @@ class NCAExecutionConfig(ConfigBase):
58
61
  self.__data_processing = data_processing
59
62
  self.__post_processing = post_processing
60
63
  self.__full_payload = full_payload
64
+ self.wait_for_results = wait_for_results
65
+ self.max_wait_in_seconds = max_wait_in_seconds
66
+ self.enabled = enabled
61
67
 
62
68
  @property
63
69
  def login(self) -> LoginConfig:
@@ -186,6 +192,8 @@ class NCAExecutionConfigs(ConfigBase):
186
192
  meta_data = self.__load_dictionary_data_or_file(key="meta", analysis=analysis, optional=True)
187
193
  data_cleaning = self.__load_dictionary_data_or_file(key="data_cleaning", analysis=analysis, optional=True)
188
194
  post_processing = self.__load_dictionary_data_or_file(key="post_processing", analysis=analysis, optional=True)
195
+ wait_for_results =str(analysis.get("wait_for_results", True)).lower() == "true"
196
+ max_wait_in_seconds = int(analysis.get("max_wait_in_seconds", 600))
189
197
 
190
198
  self.add(
191
199
  login=login,
@@ -197,7 +205,9 @@ class NCAExecutionConfigs(ConfigBase):
197
205
  enabled=enabled,
198
206
  full_payload=full_payload,
199
207
  data_processing=data_cleaning,
200
- post_processing=post_processing
208
+ post_processing=post_processing,
209
+ wait_for_results=wait_for_results,
210
+ max_wait_in_seconds=max_wait_in_seconds
201
211
  )
202
212
 
203
213
 
@@ -217,6 +227,11 @@ class NCAExecutionConfigs(ConfigBase):
217
227
  "file_path": file_path,
218
228
  }
219
229
  )
230
+ if not file_path:
231
+ if optional:
232
+ return None
233
+ raise RuntimeError(f"Data for {key} not found: {file_path}")
234
+
220
235
  path = FileUtility.load_filepath(file_path)
221
236
  if os.path.exists(path) is False:
222
237
  if optional:
@@ -63,7 +63,8 @@ class NCAAnalysisTest(IntegrationTestBase):
63
63
  ),
64
64
  config_data=nca_execution_config.config_data,
65
65
  meta_data=nca_execution_config.meta_data,
66
- wait_for_results=True,
66
+ wait_for_results=nca_execution_config.wait_for_results,
67
+ wait_for_results_timeout=nca_execution_config.max_wait_in_seconds,
67
68
  output_directory=nca_execution_config.output_dir,
68
69
  unzip_after_download=False,
69
70
  data_processing=nca_execution_config.data_processing,
@@ -89,6 +89,9 @@ class NCAAnalysis(NCAApiBaseClass):
89
89
  file_id=file_id,
90
90
  config_data=config_data,
91
91
  meta_data=meta_data,
92
+ post_processing=post_processing,
93
+ data_processing=data_processing,
94
+ full_payload=full_payload
92
95
  )
93
96
 
94
97
  execution_id: str = execution_response.get("execution_id", "")
@@ -258,9 +258,9 @@ class CommandlineArgs:
258
258
  self, starting_path: str, file_name: str, raise_error_if_not_found: bool = True
259
259
  ) -> str | None:
260
260
  """Searches the project directory structor for a file"""
261
- parents = 10
261
+
262
262
  starting_path = starting_path or __file__
263
-
263
+ parents = len(starting_path.split(os.sep)) -1
264
264
  paths: List[str] = []
265
265
  for parent in range(parents):
266
266
  path = Path(starting_path).parents[parent].absolute()
@@ -61,9 +61,9 @@ class EnvironmentServices:
61
61
  self, starting_path: str, file_name: str, raise_error_if_not_found: bool = True
62
62
  ) -> str | None:
63
63
  """Searches the project directory structure for a file"""
64
- parents = 10
64
+
65
65
  starting_path = starting_path or __file__
66
-
66
+ parents = len(starting_path.split(os.sep)) -1
67
67
  paths: List[str] = []
68
68
  for parent in range(parents):
69
69
  path = Path(starting_path).parents[parent].absolute()
@@ -87,8 +87,9 @@ class EnvironmentServices:
87
87
  raise_error_if_not_found: bool = True,
88
88
  ) -> str | None:
89
89
  """From a given starting point, move up the directory chain until you find the modules root"""
90
- parents = 10
90
+
91
91
  starting_path = starting_path or __file__
92
+ parents = len(starting_path.split(os.sep)) -1
92
93
  MODULE_ROOT = "aplos_nca_saas_sdk" # pylint: disable=c0103
93
94
  paths: List[str] = []
94
95
  for parent in range(parents):
@@ -1,4 +1,4 @@
1
1
  # Aplos NCA SaaS SDK Version File
2
2
  # This is automatically generated during the build process.
3
3
  # DO NOT UPDATE IT DIRECTLY. IT WILL BE OVERWRITTEN.
4
- __version__ = '0.0.17'
4
+ __version__ = '0.0.18'