aignostics 0.2.48__tar.gz → 0.2.49__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 (200) hide show
  1. {aignostics-0.2.48 → aignostics-0.2.49}/PKG-INFO +1 -1
  2. {aignostics-0.2.48 → aignostics-0.2.49}/examples/notebook.py +1 -1
  3. {aignostics-0.2.48 → aignostics-0.2.49}/pyproject.toml +2 -2
  4. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_cli.py +99 -1
  5. {aignostics-0.2.48 → aignostics-0.2.49}/.gitignore +0 -0
  6. {aignostics-0.2.48 → aignostics-0.2.49}/LICENSE +0 -0
  7. {aignostics-0.2.48 → aignostics-0.2.49}/README.md +0 -0
  8. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/.openapi-generator/FILES +0 -0
  9. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/.openapi-generator/VERSION +0 -0
  10. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/api/public_api.py +0 -0
  11. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/api_client.py +0 -0
  12. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/api_response.py +0 -0
  13. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/configuration.py +0 -0
  14. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/exceptions.py +0 -0
  15. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/__init__.py +0 -0
  16. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/application_read_response.py +0 -0
  17. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/application_run_status.py +0 -0
  18. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/application_version_read_response.py +0 -0
  19. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/http_validation_error.py +0 -0
  20. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/input_artifact_creation_request.py +0 -0
  21. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/input_artifact_read_response.py +0 -0
  22. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/item_creation_request.py +0 -0
  23. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/item_result_read_response.py +0 -0
  24. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/item_status.py +0 -0
  25. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/output_artifact_read_response.py +0 -0
  26. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/output_artifact_result_read_response.py +0 -0
  27. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/output_artifact_scope.py +0 -0
  28. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/payload_input_artifact.py +0 -0
  29. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/payload_item.py +0 -0
  30. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/payload_output_artifact.py +0 -0
  31. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/run_creation_request.py +0 -0
  32. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/run_creation_response.py +0 -0
  33. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/run_read_response.py +0 -0
  34. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/transfer_urls.py +0 -0
  35. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/user_payload.py +0 -0
  36. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/validation_error.py +0 -0
  37. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/models/validation_error_loc_inner.py +0 -0
  38. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/aignx/codegen/rest.py +0 -0
  39. {aignostics-0.2.48 → aignostics-0.2.49}/codegen/out/docs/PublicApi.md +0 -0
  40. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics/_internal/boto3/examples/cloudfront.rst +0 -0
  41. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics/_internal/boto3/examples/s3.rst +0 -0
  42. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  43. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  44. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  45. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Frameworks/boto3/examples/cloudfront.rst +0 -0
  46. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Frameworks/boto3/examples/s3.rst +0 -0
  47. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Frameworks/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  48. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Frameworks/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  49. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Frameworks/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  50. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Resources/boto3/examples/cloudfront.rst +0 -0
  51. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Resources/boto3/examples/s3.rst +0 -0
  52. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Resources/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  53. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Resources/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  54. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-13/aignostics.app/Contents/Resources/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  55. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics/_internal/boto3/examples/cloudfront.rst +0 -0
  56. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics/_internal/boto3/examples/s3.rst +0 -0
  57. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  58. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  59. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  60. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Frameworks/boto3/examples/cloudfront.rst +0 -0
  61. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Frameworks/boto3/examples/s3.rst +0 -0
  62. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Frameworks/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  63. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Frameworks/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  64. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Frameworks/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  65. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Resources/boto3/examples/cloudfront.rst +0 -0
  66. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Resources/boto3/examples/s3.rst +0 -0
  67. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Resources/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  68. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Resources/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  69. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-macos-latest/aignostics.app/Contents/Resources/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  70. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-24.04-arm/aignostics/_internal/boto3/examples/cloudfront.rst +0 -0
  71. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-24.04-arm/aignostics/_internal/boto3/examples/s3.rst +0 -0
  72. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-24.04-arm/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  73. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-24.04-arm/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  74. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-24.04-arm/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  75. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-latest/aignostics/_internal/boto3/examples/cloudfront.rst +0 -0
  76. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-latest/aignostics/_internal/boto3/examples/s3.rst +0 -0
  77. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  78. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  79. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-ubuntu-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  80. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-11-arm/aignostics/_internal/boto3/examples/cloudfront.rst +0 -0
  81. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-11-arm/aignostics/_internal/boto3/examples/s3.rst +0 -0
  82. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-11-arm/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  83. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-11-arm/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  84. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-11-arm/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  85. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-latest/aignostics/_internal/boto3/examples/cloudfront.rst +0 -0
  86. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-latest/aignostics/_internal/boto3/examples/s3.rst +0 -0
  87. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.jquery +0 -0
  88. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon +0 -0
  89. {aignostics-0.2.48 → aignostics-0.2.49}/dist_native_all/dist_native-windows-latest/aignostics/_internal/openslide_python-1.4.2.dist-info/licenses/examples/deepzoom/licenses/LICENSE.openseadragon-scalebar +0 -0
  90. {aignostics-0.2.48 → aignostics-0.2.49}/examples/__init__.py +0 -0
  91. {aignostics-0.2.48 → aignostics-0.2.49}/examples/notebook.ipynb +0 -0
  92. {aignostics-0.2.48 → aignostics-0.2.49}/examples/script.py +0 -0
  93. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/__init__.py +0 -0
  94. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/__init__.py +0 -0
  95. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/_frame.py +0 -0
  96. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/_page_application_describe.py +0 -0
  97. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/_page_application_run_describe.py +0 -0
  98. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/_page_builder.py +0 -0
  99. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/_page_index.py +0 -0
  100. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/_utils.py +0 -0
  101. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/canceled.lottie +0 -0
  102. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/done.lottie +0 -0
  103. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/empty.lottie +0 -0
  104. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/error.lottie +0 -0
  105. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/error_alt.lottie +0 -0
  106. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/home-card-1.png +0 -0
  107. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/home-card-2.png +0 -0
  108. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/home-card-3.png +0 -0
  109. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/home-card-4.png +0 -0
  110. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/home-card-5.png +0 -0
  111. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/image-not-found.png +0 -0
  112. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/pending.lottie +0 -0
  113. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/pending_alt.lottie +0 -0
  114. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/ruo.png +0 -0
  115. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_gui/assets/ruo.svg +0 -0
  116. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_service.py +0 -0
  117. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_settings.py +0 -0
  118. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/application/_utils.py +0 -0
  119. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/__init__.py +0 -0
  120. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/_cli.py +0 -0
  121. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/_gui.py +0 -0
  122. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/_service.py +0 -0
  123. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/_settings.py +0 -0
  124. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/assets/Google-Cloud-logo.png +0 -0
  125. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/bucket/assets/Google-Cloud-logo.svg +0 -0
  126. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/cli.py +0 -0
  127. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/constants.py +0 -0
  128. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/dataset/__init__.py +0 -0
  129. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/dataset/_cli.py +0 -0
  130. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/dataset/_gui.py +0 -0
  131. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/dataset/_service.py +0 -0
  132. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/dataset/assets/NIH-IDC-logo.svg +0 -0
  133. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/gui/__init__.py +0 -0
  134. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/gui/_frame.py +0 -0
  135. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/gui/_theme.py +0 -0
  136. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/gui/assets/cabin-v27-latin-regular.woff2 +0 -0
  137. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/gui/assets/logo.png +0 -0
  138. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/notebook/__init__.py +0 -0
  139. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/notebook/_gui.py +0 -0
  140. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/notebook/_notebook.py +0 -0
  141. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/notebook/_service.py +0 -0
  142. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/notebook/assets/python.lottie +0 -0
  143. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/__init__.py +0 -0
  144. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_authentication.py +0 -0
  145. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_client.py +0 -0
  146. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_constants.py +0 -0
  147. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_messages.py +0 -0
  148. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_service.py +0 -0
  149. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_settings.py +0 -0
  150. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/_utils.py +0 -0
  151. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/resources/__init__.py +0 -0
  152. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/resources/applications.py +0 -0
  153. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/resources/runs.py +0 -0
  154. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/platform/resources/utils.py +0 -0
  155. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/__init__.py +0 -0
  156. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/_cli.py +0 -0
  157. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/_gui.py +0 -0
  158. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/_service.py +0 -0
  159. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/_settings.py +0 -0
  160. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/assets/download.lottie +0 -0
  161. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/assets/microscope.lottie +0 -0
  162. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/assets/update.lottie +0 -0
  163. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/scripts/add.groovy +0 -0
  164. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/scripts/annotate.groovy +0 -0
  165. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/scripts/inspect.groovy +0 -0
  166. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/qupath/scripts/test.groovy +0 -0
  167. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/__init__.py +0 -0
  168. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/_cli.py +0 -0
  169. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/_exceptions.py +0 -0
  170. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/_gui.py +0 -0
  171. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/_service.py +0 -0
  172. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/_settings.py +0 -0
  173. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/system/assets/system.lottie +0 -0
  174. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/third_party/bottle.py +0 -0
  175. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/third_party/idc_index.py +0 -0
  176. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/__init__.py +0 -0
  177. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_cli.py +0 -0
  178. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_console.py +0 -0
  179. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_constants.py +0 -0
  180. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_di.py +0 -0
  181. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_fs.py +0 -0
  182. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_gui.py +0 -0
  183. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_health.py +0 -0
  184. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_log.py +0 -0
  185. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_logfire.py +0 -0
  186. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_notebook.py +0 -0
  187. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_process.py +0 -0
  188. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_sentry.py +0 -0
  189. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_service.py +0 -0
  190. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/_settings.py +0 -0
  191. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/utils/boot.py +0 -0
  192. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/__init__.py +0 -0
  193. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/_cli.py +0 -0
  194. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/_gui.py +0 -0
  195. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/_openslide_handler.py +0 -0
  196. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/_pydicom_handler.py +0 -0
  197. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/_service.py +0 -0
  198. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/_utils.py +0 -0
  199. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics/wsi/assets/fallback.png +0 -0
  200. {aignostics-0.2.48 → aignostics-0.2.49}/src/aignostics.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aignostics
3
- Version: 0.2.48
3
+ Version: 0.2.49
4
4
  Summary: 🔬 Python SDK providing access to the Aignostics Platform. Includes Aignostics Launchpad (Desktop Application), Aignostics CLI (Command-Line Interface), example notebooks, and Aignostics Client Library.
5
5
  Project-URL: Homepage, https://aignostics.readthedocs.io/en/latest/
6
6
  Project-URL: Documentation, https://aignostics.readthedocs.io/en/latest/
@@ -2,7 +2,7 @@
2
2
  # requires-python = ">=3.13"
3
3
  # dependencies = [
4
4
  # "marimo",
5
- # "aignostics==0.2.48",
5
+ # "aignostics==0.2.49",
6
6
  # ]
7
7
  # ///
8
8
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "aignostics"
3
- version = "0.2.48"
3
+ version = "0.2.49"
4
4
  description = "🔬 Python SDK providing access to the Aignostics Platform. Includes Aignostics Launchpad (Desktop Application), Aignostics CLI (Command-Line Interface), example notebooks, and Aignostics Client Library."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -355,7 +355,7 @@ source = ["src/"]
355
355
 
356
356
 
357
357
  [tool.bumpversion]
358
- current_version = "0.2.48"
358
+ current_version = "0.2.49"
359
359
  parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
360
360
  serialize = ["{major}.{minor}.{patch}"]
361
361
  search = "{current_version}"
@@ -1,7 +1,9 @@
1
1
  """CLI of application module."""
2
2
 
3
+ import json
3
4
  import sys
4
5
  import time
6
+ import zipfile
5
7
  from pathlib import Path
6
8
  from typing import Annotated
7
9
 
@@ -9,7 +11,7 @@ import typer
9
11
 
10
12
  from aignostics.bucket import Service as BucketService
11
13
  from aignostics.platform import NotFoundException
12
- from aignostics.utils import console, get_logger, get_user_data_directory
14
+ from aignostics.utils import console, get_logger, get_user_data_directory, sanitize_path
13
15
 
14
16
  from ._service import DownloadProgress, DownloadProgressState, Service
15
17
  from ._utils import (
@@ -96,6 +98,102 @@ def application_list(
96
98
  console.print("No applications available.")
97
99
 
98
100
 
101
+ @cli.command("dump-schemata")
102
+ def application_dump_schemata( # noqa: C901
103
+ id: Annotated[ # noqa: A002
104
+ str,
105
+ typer.Argument(
106
+ help="Id of the application or application_version to dump the output schema for. "
107
+ "If application id is given the latest version of the application will be used."
108
+ ),
109
+ ],
110
+ destination: Annotated[
111
+ Path,
112
+ typer.Option(
113
+ help="Path pointing to directory where the input and output schemata will be dumped.",
114
+ exists=False,
115
+ file_okay=False,
116
+ dir_okay=True,
117
+ writable=True,
118
+ readable=True,
119
+ resolve_path=True,
120
+ ),
121
+ ] = Path().cwd(), # noqa: B008,
122
+ zip: Annotated[ # noqa: A002
123
+ bool,
124
+ typer.Option(
125
+ help="If set, the schema files will be zipped into a single file, with the schema files deleted.",
126
+ ),
127
+ ] = False,
128
+ ) -> None:
129
+ """Output the input schema of the application in JSON format."""
130
+ try:
131
+ application_version = Service().application_version(id, True)
132
+ application = Service().application(application_version.application_id)
133
+ except (NotFoundException, ValueError) as e:
134
+ message = f"Failed to load application version with ID '{id}', check your input: : {e!s}."
135
+ logger.warning(message)
136
+ console.print(f"[warning]Warning:[/warning] {message}")
137
+ sys.exit(2)
138
+ except (Exception, RuntimeError) as e:
139
+ message = f"Failed to load application version with ID '{id}': {e!s}."
140
+ logger.exception(message)
141
+ console.print(f"[warning]Error:[/warning] {message}")
142
+ sys.exit(1)
143
+ try:
144
+ destination.mkdir(parents=True, exist_ok=True)
145
+ except OSError as e:
146
+ console.print(f"[error]Error:[/error] Failed to create directory '{destination}': {e}")
147
+ sys.exit(1)
148
+
149
+ created_files: list[Path] = []
150
+
151
+ for input_artifact in application_version.input_artifacts:
152
+ if input_artifact.metadata_schema:
153
+ file_path: Path = sanitize_path(
154
+ Path(destination / f"{application_version.application_version_id}_input_{input_artifact.name}.json")
155
+ ) # type: ignore
156
+ file_path.write_text(data=json.dumps(input_artifact.metadata_schema, indent=2), encoding="utf-8")
157
+ created_files.append(file_path)
158
+
159
+ for output_artifact in application_version.output_artifacts:
160
+ if output_artifact.metadata_schema:
161
+ file_path = sanitize_path(
162
+ Path(destination / f"{application_version.application_version_id}_output_{output_artifact.name}.json")
163
+ ) # type: ignore
164
+ file_path.write_text(data=json.dumps(output_artifact.metadata_schema, indent=2), encoding="utf-8")
165
+ created_files.append(file_path)
166
+
167
+ md_file_path: Path = sanitize_path(Path(destination / f"{application_version.application_version_id}_schemata.md")) # type: ignore
168
+ with md_file_path.open("w", encoding="utf-8") as md_file:
169
+ md_file.write(f"# Schemata for Aignostics Application {application.name}\n")
170
+ md_file.write(f"* ID: {application.application_id}\n")
171
+ md_file.write(f"* Version ID: {application_version.application_version_id}\n")
172
+ md_file.write(f"\n## Description: \n{application.description}\n\n")
173
+ md_file.write("\n## Input Artifacts\n")
174
+ for input_artifact in application_version.input_artifacts:
175
+ md_file.write(
176
+ f"- {input_artifact.name}: "
177
+ f"{application_version.application_version_id}_input_{input_artifact.name}.json\n"
178
+ )
179
+ md_file.write("\n## Output Artifacts\n")
180
+ for output_artifact in application_version.output_artifacts:
181
+ md_file.write(
182
+ f"- {output_artifact.name}: "
183
+ f"{application_version.application_version_id}_output_{output_artifact.name}.json\n"
184
+ )
185
+ created_files.append(md_file_path)
186
+
187
+ if zip:
188
+ zip_filename = sanitize_path(Path(destination / f"{application_version.application_version_id}_schemata.zip"))
189
+ with zipfile.ZipFile(zip_filename, "w", zipfile.ZIP_DEFLATED) as zipf:
190
+ for file_path in created_files:
191
+ zipf.write(file_path, arcname=file_path.name)
192
+ console.print(f"Zipped {len(created_files)} files to [bold]{zip_filename}[/bold]")
193
+ for file_path in created_files:
194
+ file_path.unlink()
195
+
196
+
99
197
  @cli.command("describe")
100
198
  def application_describe(
101
199
  application_id: Annotated[str, typer.Argument(help="Id of the application to describe")],
File without changes
File without changes
File without changes