quapp-common 0.0.12.dev12__tar.gz → 0.0.12.dev13__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 (86) hide show
  1. {quapp_common-0.0.12.dev12/quapp_common.egg-info → quapp_common-0.0.12.dev13}/PKG-INFO +19 -1
  2. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/README.md +18 -0
  3. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/pyproject.toml +1 -1
  4. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/circuit_adapter.py +14 -0
  5. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13/quapp_common.egg-info}/PKG-INFO +19 -1
  6. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/LICENSE +0 -0
  7. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/__init__.py +0 -0
  8. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/async_tasks/__init__.py +0 -0
  9. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/async_tasks/async_invocation_task.py +0 -0
  10. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/async_tasks/async_task.py +0 -0
  11. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/async_tasks/export_circuit_task.py +0 -0
  12. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/async_tasks/post_processing_task.py +0 -0
  13. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/__init__.py +0 -0
  14. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/backend/__init__.py +0 -0
  15. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/backend/invocation.py +0 -0
  16. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/backend/job_fetcher.py +0 -0
  17. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/backend/job_fetching.py +0 -0
  18. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/backend/job_manager.py +0 -0
  19. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/bridge.py +0 -0
  20. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/callback/__init__.py +0 -0
  21. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/callback/update_job_metadata.py +0 -0
  22. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/device/__init__.py +0 -0
  23. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/device/device_selection.py +0 -0
  24. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/dispatcher.py +0 -0
  25. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/component/result_serializer.py +0 -0
  26. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/config/__init__.py +0 -0
  27. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/config/logging_config.py +0 -0
  28. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/config/thread_config.py +0 -0
  29. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/__init__.py +0 -0
  30. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/async_task/__init__.py +0 -0
  31. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/async_task/circuit_export/__init__.py +0 -0
  32. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/async_task/circuit_export/backend_holder.py +0 -0
  33. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/async_task/circuit_export/circuit_holder.py +0 -0
  34. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/backend/__init__.py +0 -0
  35. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/backend/backend_information.py +0 -0
  36. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/callback/__init__.py +0 -0
  37. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/callback/callback_url.py +0 -0
  38. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/device/__init__.py +0 -0
  39. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/device/circuit_running_option.py +0 -0
  40. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/promise/__init__.py +0 -0
  41. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/promise/post_processing_promise.py +0 -0
  42. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/promise/promise.py +0 -0
  43. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/request/__init__.py +0 -0
  44. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/request/invocation_request.py +0 -0
  45. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/request/job_fetching_request.py +0 -0
  46. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/request/request.py +0 -0
  47. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/response/__init__.py +0 -0
  48. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/response/authentication.py +0 -0
  49. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/response/custom_header.py +0 -0
  50. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/data/response/job_response.py +0 -0
  51. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/__init__.py +0 -0
  52. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/base_enum.py +0 -0
  53. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/http_header.py +0 -0
  54. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/invocation_step.py +0 -0
  55. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/language.py +0 -0
  56. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/media_type.py +0 -0
  57. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/processing_unit.py +0 -0
  58. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/provider_tag.py +0 -0
  59. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/sdk.py +0 -0
  60. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/status/__init__.py +0 -0
  61. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/status/job_status.py +0 -0
  62. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/status/status_code.py +0 -0
  63. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/enum/token_type.py +0 -0
  64. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/factory/__init__.py +0 -0
  65. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/factory/device_factory.py +0 -0
  66. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/factory/handler_factory.py +0 -0
  67. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/factory/provider_factory.py +0 -0
  68. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/handler/__init__.py +0 -0
  69. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/handler/handler.py +0 -0
  70. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/__init__.py +0 -0
  71. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/device/__init__.py +0 -0
  72. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/device/custom_device.py +0 -0
  73. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/device/device.py +0 -0
  74. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/invocation.py +0 -0
  75. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/provider/__init__.py +0 -0
  76. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/model/provider/provider.py +0 -0
  77. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/util/__init__.py +0 -0
  78. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/util/file_utils.py +0 -0
  79. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/util/http_utils.py +0 -0
  80. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/util/json_parser_utils.py +0 -0
  81. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common/util/response_utils.py +0 -0
  82. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common.egg-info/SOURCES.txt +0 -0
  83. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common.egg-info/dependency_links.txt +0 -0
  84. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common.egg-info/requires.txt +0 -0
  85. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/quapp_common.egg-info/top_level.txt +0 -0
  86. {quapp_common-0.0.12.dev12 → quapp_common-0.0.12.dev13}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quapp-common
3
- Version: 0.0.12.dev12
3
+ Version: 0.0.12.dev13
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)
@@ -103,6 +103,24 @@ Notes:
103
103
 
104
104
  ## Recently Changes Highlights
105
105
 
106
+ ### v0.0.12.dev13
107
+ - Fix: `CircuitAdapter._adapt_openqasm` for `Sdk.PENNYLANE` now injects string
108
+ sentinels (`"Expectation"`, `"Variance"`, `"Sample"`, `"Probability"`,
109
+ `"State"`, `"MidMeasure"`) back into `pennylane.measurements` when they are
110
+ absent. PennyLane 0.37 removed `ObservableReturnTypes` from that module, but
111
+ legacy plugins such as `pennylane-rigetti` import these names at module level
112
+ and crash with `ImportError` before the device is created. The shim is
113
+ injected inside `__pre_execute`, before `PennylaneInvocation` creates the
114
+ device, so the plugin import succeeds and the removed code paths are bypassed
115
+ at runtime.
116
+
117
+ ### v0.0.12.dev12
118
+ - Feat: add `QUAPP_HPC` to `ProviderTag` enum to support the Slurm HPC
119
+ integration. Required by `quapp-hpc` so its `SlurmProvider` can register
120
+ itself in the shared `ProviderTag` namespace; without this, importing
121
+ `quapp-hpc` fails at `SlurmProvider.__init__` with `AttributeError` on the
122
+ enum lookup.
123
+
106
124
  ### v0.0.12.dev11
107
125
  - Enhance: `CircuitAdapter` now emits structured debug logs at each routing
108
126
  decision — SDK selected, QASM string length, qubit count, per-SDK adapter
@@ -64,6 +64,24 @@ Notes:
64
64
 
65
65
  ## Recently Changes Highlights
66
66
 
67
+ ### v0.0.12.dev13
68
+ - Fix: `CircuitAdapter._adapt_openqasm` for `Sdk.PENNYLANE` now injects string
69
+ sentinels (`"Expectation"`, `"Variance"`, `"Sample"`, `"Probability"`,
70
+ `"State"`, `"MidMeasure"`) back into `pennylane.measurements` when they are
71
+ absent. PennyLane 0.37 removed `ObservableReturnTypes` from that module, but
72
+ legacy plugins such as `pennylane-rigetti` import these names at module level
73
+ and crash with `ImportError` before the device is created. The shim is
74
+ injected inside `__pre_execute`, before `PennylaneInvocation` creates the
75
+ device, so the plugin import succeeds and the removed code paths are bypassed
76
+ at runtime.
77
+
78
+ ### v0.0.12.dev12
79
+ - Feat: add `QUAPP_HPC` to `ProviderTag` enum to support the Slurm HPC
80
+ integration. Required by `quapp-hpc` so its `SlurmProvider` can register
81
+ itself in the shared `ProviderTag` namespace; without this, importing
82
+ `quapp-hpc` fails at `SlurmProvider.__init__` with `AttributeError` on the
83
+ enum lookup.
84
+
67
85
  ### v0.0.12.dev11
68
86
  - Enhance: `CircuitAdapter` now emits structured debug logs at each routing
69
87
  decision — SDK selected, QASM string length, qubit count, per-SDK adapter
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "quapp-common"
7
- version = "0.0.12.dev12"
7
+ version = "0.0.12.dev13"
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" }]
@@ -64,6 +64,20 @@ class CircuitAdapter:
64
64
  elif sdk == Sdk.PENNYLANE:
65
65
  logger.debug("Converting OpenQASM via PennyLane qml.from_qasm wrapper")
66
66
  import pennylane as qml
67
+ # PennyLane 0.37 removed ObservableReturnTypes (Expectation, Variance,
68
+ # Sample, …) from pennylane.measurements. Legacy plugins such as
69
+ # pennylane-rigetti import these names at module level, so they crash
70
+ # with ImportError before the device is even created. We inject string
71
+ # sentinels back into the module here — this runs inside __pre_execute,
72
+ # which is called before PennylaneInvocation creates the device, so the
73
+ # shim is in place when `qml.device("rigetti.qvm", ...)` triggers the
74
+ # plugin import. The sentinels are never equal to new-style measurement
75
+ # objects, so the removed code paths are simply bypassed at runtime.
76
+ import pennylane.measurements as _plm
77
+ for _compat_name in ("Expectation", "Variance", "Sample", "Probability",
78
+ "State", "MidMeasure"):
79
+ if not hasattr(_plm, _compat_name):
80
+ setattr(_plm, _compat_name, _compat_name)
67
81
  # PennyLane >=0.37 treats QASM `measure` statements as mid-circuit
68
82
  # measurements returning MeasurementValue, which fails QNode
69
83
  # validation. Override with a terminal `qml.probs` over all qubits
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quapp-common
3
- Version: 0.0.12.dev12
3
+ Version: 0.0.12.dev13
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)
@@ -103,6 +103,24 @@ Notes:
103
103
 
104
104
  ## Recently Changes Highlights
105
105
 
106
+ ### v0.0.12.dev13
107
+ - Fix: `CircuitAdapter._adapt_openqasm` for `Sdk.PENNYLANE` now injects string
108
+ sentinels (`"Expectation"`, `"Variance"`, `"Sample"`, `"Probability"`,
109
+ `"State"`, `"MidMeasure"`) back into `pennylane.measurements` when they are
110
+ absent. PennyLane 0.37 removed `ObservableReturnTypes` from that module, but
111
+ legacy plugins such as `pennylane-rigetti` import these names at module level
112
+ and crash with `ImportError` before the device is created. The shim is
113
+ injected inside `__pre_execute`, before `PennylaneInvocation` creates the
114
+ device, so the plugin import succeeds and the removed code paths are bypassed
115
+ at runtime.
116
+
117
+ ### v0.0.12.dev12
118
+ - Feat: add `QUAPP_HPC` to `ProviderTag` enum to support the Slurm HPC
119
+ integration. Required by `quapp-hpc` so its `SlurmProvider` can register
120
+ itself in the shared `ProviderTag` namespace; without this, importing
121
+ `quapp-hpc` fails at `SlurmProvider.__init__` with `AttributeError` on the
122
+ enum lookup.
123
+
106
124
  ### v0.0.12.dev11
107
125
  - Enhance: `CircuitAdapter` now emits structured debug logs at each routing
108
126
  decision — SDK selected, QASM string length, qubit count, per-SDK adapter