quapp-common 0.0.13.dev1__tar.gz → 0.0.13.dev2__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 (89) hide show
  1. {quapp_common-0.0.13.dev1/quapp_common.egg-info → quapp_common-0.0.13.dev2}/PKG-INFO +10 -1
  2. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/README.md +9 -0
  3. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/pyproject.toml +1 -1
  4. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/circuit_adapter.py +5 -1
  5. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2/quapp_common.egg-info}/PKG-INFO +10 -1
  6. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/LICENSE +0 -0
  7. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/__init__.py +0 -0
  8. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/async_tasks/__init__.py +0 -0
  9. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/async_tasks/async_invocation_task.py +0 -0
  10. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/async_tasks/async_task.py +0 -0
  11. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/async_tasks/export_circuit_task.py +0 -0
  12. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/async_tasks/post_processing_task.py +0 -0
  13. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/__init__.py +0 -0
  14. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/backend/__init__.py +0 -0
  15. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/backend/invocation.py +0 -0
  16. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/backend/job_fetcher.py +0 -0
  17. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/backend/job_fetching.py +0 -0
  18. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/backend/job_manager.py +0 -0
  19. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/bridge.py +0 -0
  20. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/callback/__init__.py +0 -0
  21. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/callback/update_job_metadata.py +0 -0
  22. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/device/__init__.py +0 -0
  23. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/device/device_selection.py +0 -0
  24. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/dispatcher.py +0 -0
  25. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/component/result_serializer.py +0 -0
  26. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/config/__init__.py +0 -0
  27. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/config/logging_config.py +0 -0
  28. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/config/thread_config.py +0 -0
  29. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/__init__.py +0 -0
  30. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/async_task/__init__.py +0 -0
  31. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/async_task/circuit_export/__init__.py +0 -0
  32. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/async_task/circuit_export/backend_holder.py +0 -0
  33. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/async_task/circuit_export/circuit_holder.py +0 -0
  34. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/backend/__init__.py +0 -0
  35. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/backend/backend_information.py +0 -0
  36. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/callback/__init__.py +0 -0
  37. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/callback/callback_url.py +0 -0
  38. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/device/__init__.py +0 -0
  39. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/device/circuit_running_option.py +0 -0
  40. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/promise/__init__.py +0 -0
  41. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/promise/post_processing_promise.py +0 -0
  42. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/promise/promise.py +0 -0
  43. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/request/__init__.py +0 -0
  44. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/request/invocation_request.py +0 -0
  45. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/request/job_fetching_request.py +0 -0
  46. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/request/request.py +0 -0
  47. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/response/__init__.py +0 -0
  48. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/response/authentication.py +0 -0
  49. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/response/custom_header.py +0 -0
  50. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/data/response/job_response.py +0 -0
  51. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/__init__.py +0 -0
  52. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/base_enum.py +0 -0
  53. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/http_header.py +0 -0
  54. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/invocation_step.py +0 -0
  55. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/language.py +0 -0
  56. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/media_type.py +0 -0
  57. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/processing_unit.py +0 -0
  58. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/provider_tag.py +0 -0
  59. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/sdk.py +0 -0
  60. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/status/__init__.py +0 -0
  61. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/status/job_status.py +0 -0
  62. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/status/status_code.py +0 -0
  63. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/enum/token_type.py +0 -0
  64. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/factory/__init__.py +0 -0
  65. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/factory/device_factory.py +0 -0
  66. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/factory/handler_factory.py +0 -0
  67. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/factory/provider_factory.py +0 -0
  68. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/handler/__init__.py +0 -0
  69. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/handler/handler.py +0 -0
  70. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/__init__.py +0 -0
  71. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/device/__init__.py +0 -0
  72. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/device/custom_device.py +0 -0
  73. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/device/device.py +0 -0
  74. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/invocation.py +0 -0
  75. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/provider/__init__.py +0 -0
  76. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/model/provider/provider.py +0 -0
  77. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/util/__init__.py +0 -0
  78. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/util/file_utils.py +0 -0
  79. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/util/http_utils.py +0 -0
  80. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/util/json_parser_utils.py +0 -0
  81. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common/util/response_utils.py +0 -0
  82. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common.egg-info/SOURCES.txt +0 -0
  83. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common.egg-info/dependency_links.txt +0 -0
  84. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common.egg-info/requires.txt +0 -0
  85. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/quapp_common.egg-info/top_level.txt +0 -0
  86. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/setup.cfg +0 -0
  87. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/tests/test_circuit_adapter.py +0 -0
  88. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/tests/test_json_parser_utils.py +0 -0
  89. {quapp_common-0.0.13.dev1 → quapp_common-0.0.13.dev2}/tests/test_result_serializer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quapp-common
3
- Version: 0.0.13.dev1
3
+ Version: 0.0.13.dev2
4
4
  Summary: Quapp common library supporting Quapp Platform for Quantum Computing
5
5
  Author-email: "CITYNOW Co. Ltd. " <corp@citynow.vn>
6
6
  License: The MIT License (MIT)
@@ -114,6 +114,15 @@ Notes:
114
114
 
115
115
  ## Recently Changes Highlights
116
116
 
117
+ ### v0.0.13.dev2
118
+ - Fix: `_openqasm_to_braket` in `circuit_adapter.py` now injects a default
119
+ `Probability` result type when the Braket circuit produced by `tk_to_braket`
120
+ has no result types. OpenQASM circuits submitted from non-Python runtimes (e.g.
121
+ Q#) do not carry explicit measurement annotations, so the converted Braket
122
+ circuit would have an empty `result_types` list and fail at execution time. The
123
+ fix adds `circuit.probability(target=list(range(circuit.qubit_count)))` before
124
+ returning, ensuring every Braket job has at least one result type.
125
+
117
126
  ### v0.0.13.dev1
118
127
  - Refactor: Replace class-based subprocess components with standalone
119
128
  module-level functions for simpler imports and testability:
@@ -73,6 +73,15 @@ Notes:
73
73
 
74
74
  ## Recently Changes Highlights
75
75
 
76
+ ### v0.0.13.dev2
77
+ - Fix: `_openqasm_to_braket` in `circuit_adapter.py` now injects a default
78
+ `Probability` result type when the Braket circuit produced by `tk_to_braket`
79
+ has no result types. OpenQASM circuits submitted from non-Python runtimes (e.g.
80
+ Q#) do not carry explicit measurement annotations, so the converted Braket
81
+ circuit would have an empty `result_types` list and fail at execution time. The
82
+ fix adds `circuit.probability(target=list(range(circuit.qubit_count)))` before
83
+ returning, ensuring every Braket job has at least one result type.
84
+
76
85
  ### v0.0.13.dev1
77
86
  - Refactor: Replace class-based subprocess components with standalone
78
87
  module-level functions for simpler imports and testability:
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "quapp-common"
7
- version = "0.0.13.dev1"
7
+ version = "0.0.13.dev2"
8
8
  description = "Quapp common library supporting Quapp Platform for Quantum Computing"
9
9
  readme = "README.md"
10
10
  authors = [{ name = "CITYNOW Co. Ltd. ", email = "corp@citynow.vn" }]
@@ -107,7 +107,11 @@ def _openqasm_to_braket(qasm_str):
107
107
  is_tuple = isinstance(result, tuple)
108
108
  logger.debug(
109
109
  f"tk_to_braket returned tuple={is_tuple}; unpacking index 0" if is_tuple else "tk_to_braket returned Circuit directly")
110
- return result[0] if is_tuple else result
110
+ circuit = result[0] if is_tuple else result
111
+ if not circuit.result_types:
112
+ circuit.probability(target=list(range(circuit.qubit_count)))
113
+ logger.debug(f"No result types found; added Probability over {circuit.qubit_count} qubits")
114
+ return circuit
111
115
 
112
116
 
113
117
  def _openqasm_to_cuda_quantum(qasm_str):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quapp-common
3
- Version: 0.0.13.dev1
3
+ Version: 0.0.13.dev2
4
4
  Summary: Quapp common library supporting Quapp Platform for Quantum Computing
5
5
  Author-email: "CITYNOW Co. Ltd. " <corp@citynow.vn>
6
6
  License: The MIT License (MIT)
@@ -114,6 +114,15 @@ Notes:
114
114
 
115
115
  ## Recently Changes Highlights
116
116
 
117
+ ### v0.0.13.dev2
118
+ - Fix: `_openqasm_to_braket` in `circuit_adapter.py` now injects a default
119
+ `Probability` result type when the Braket circuit produced by `tk_to_braket`
120
+ has no result types. OpenQASM circuits submitted from non-Python runtimes (e.g.
121
+ Q#) do not carry explicit measurement annotations, so the converted Braket
122
+ circuit would have an empty `result_types` list and fail at execution time. The
123
+ fix adds `circuit.probability(target=list(range(circuit.qubit_count)))` before
124
+ returning, ensuring every Braket job has at least one result type.
125
+
117
126
  ### v0.0.13.dev1
118
127
  - Refactor: Replace class-based subprocess components with standalone
119
128
  module-level functions for simpler imports and testability: