qrmi 0.13.2__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 (379) hide show
  1. qrmi-0.13.2/.github/CODEOWNERS +42 -0
  2. qrmi-0.13.2/.github/ISSUE_TEMPLATE/bug_report.yml +44 -0
  3. qrmi-0.13.2/.github/ISSUE_TEMPLATE/feature_request.yml +37 -0
  4. qrmi-0.13.2/.github/PULL_REQUEST_TEMPLATE.md +13 -0
  5. qrmi-0.13.2/.github/workflows/build-libqrmi.yml +90 -0
  6. qrmi-0.13.2/.github/workflows/build-qrmi-bins.yml +64 -0
  7. qrmi-0.13.2/.github/workflows/build-wheels.yml +66 -0
  8. qrmi-0.13.2/.github/workflows/lint-fmt-python.yml +68 -0
  9. qrmi-0.13.2/.github/workflows/lint-fmt-rust.yml +72 -0
  10. qrmi-0.13.2/.github/workflows/on-pull-request.yml +79 -0
  11. qrmi-0.13.2/.github/workflows/release.yml +212 -0
  12. qrmi-0.13.2/.github/workflows/tarball-libqrmi-el8.yml +53 -0
  13. qrmi-0.13.2/.github/workflows/tarball-vendor.yml +50 -0
  14. qrmi-0.13.2/.github/workflows/unittest-python.yml +62 -0
  15. qrmi-0.13.2/.github/workflows/unittest-rust.yml +78 -0
  16. qrmi-0.13.2/.gitignore +84 -0
  17. qrmi-0.13.2/.pre-commit-config.yaml +8 -0
  18. qrmi-0.13.2/.pylintrc +388 -0
  19. qrmi-0.13.2/.secrets.baseline +448 -0
  20. qrmi-0.13.2/CITATION.bib +7 -0
  21. qrmi-0.13.2/CODE_OF_CONDUCT.md +9 -0
  22. qrmi-0.13.2/CONTRIBUTING.md +15 -0
  23. qrmi-0.13.2/Cargo.lock +4167 -0
  24. qrmi-0.13.2/Cargo.toml +73 -0
  25. qrmi-0.13.2/Doxyfile +2837 -0
  26. qrmi-0.13.2/INSTALL.md +252 -0
  27. qrmi-0.13.2/LICENSE.txt +203 -0
  28. qrmi-0.13.2/Makefile +314 -0
  29. qrmi-0.13.2/Makefile_common.mk +67 -0
  30. qrmi-0.13.2/PKG-INFO +308 -0
  31. qrmi-0.13.2/README.md +282 -0
  32. qrmi-0.13.2/build.rs +35 -0
  33. qrmi-0.13.2/cbindgen.toml +54 -0
  34. qrmi-0.13.2/dependencies/pasqal_cloud_client/Cargo.toml +38 -0
  35. qrmi-0.13.2/dependencies/pasqal_cloud_client/README.md +163 -0
  36. qrmi-0.13.2/dependencies/pasqal_cloud_client/src/client.rs +555 -0
  37. qrmi-0.13.2/dependencies/pasqal_cloud_client/src/lib.rs +22 -0
  38. qrmi-0.13.2/dependencies/pasqal_cloud_client/src/models/batch.rs +25 -0
  39. qrmi-0.13.2/dependencies/pasqal_cloud_client/src/models/device.rs +53 -0
  40. qrmi-0.13.2/dependencies/pasqal_cloud_client/src/models.rs +16 -0
  41. qrmi-0.13.2/dependencies/pasqal_cloud_client/tests/client.rs +104 -0
  42. qrmi-0.13.2/dependencies/pasqal_local_client/Cargo.toml +41 -0
  43. qrmi-0.13.2/dependencies/pasqal_local_client/README.md +105 -0
  44. qrmi-0.13.2/dependencies/pasqal_local_client/src/client.rs +238 -0
  45. qrmi-0.13.2/dependencies/pasqal_local_client/src/lib.rs +23 -0
  46. qrmi-0.13.2/dependencies/pasqal_local_client/src/models/job.rs +23 -0
  47. qrmi-0.13.2/dependencies/pasqal_local_client/src/models.rs +14 -0
  48. qrmi-0.13.2/dependencies/pasqal_local_client/src/munge/error.rs +27 -0
  49. qrmi-0.13.2/dependencies/pasqal_local_client/src/munge/ffi.rs +25 -0
  50. qrmi-0.13.2/dependencies/pasqal_local_client/src/munge/mod.rs +48 -0
  51. qrmi-0.13.2/dependencies/qiskit_runtime_client/.openapi-generator/FILES +150 -0
  52. qrmi-0.13.2/dependencies/qiskit_runtime_client/.openapi-generator/VERSION +1 -0
  53. qrmi-0.13.2/dependencies/qiskit_runtime_client/.openapi-generator-ignore +23 -0
  54. qrmi-0.13.2/dependencies/qiskit_runtime_client/.travis.yml +1 -0
  55. qrmi-0.13.2/dependencies/qiskit_runtime_client/Cargo.toml +17 -0
  56. qrmi-0.13.2/dependencies/qiskit_runtime_client/README.md +134 -0
  57. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AccountsApi.md +41 -0
  58. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AnalyticsApi.md +153 -0
  59. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AnalyticsFilters200Response.md +13 -0
  60. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AnalyticsFilters200ResponseBackendsInner.md +11 -0
  61. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AnalyticsFilters200ResponseInstancesInner.md +12 -0
  62. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AnalyticsFilters200ResponseUsersInner.md +11 -0
  63. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/AnalyticsUsage200Response.md +31 -0
  64. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendStatusResponse.md +15 -0
  65. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsApi.md +168 -0
  66. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2.md +11 -0
  67. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInner.md +18 -0
  68. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInnerClops.md +12 -0
  69. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInnerPerformanceMetrics.md +12 -0
  70. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInnerPerformanceMetricsTwoQErrorBest.md +14 -0
  71. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInnerPerformanceMetricsTwoQErrorLayered.md +12 -0
  72. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInnerProcessorType.md +13 -0
  73. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/BackendsResponseV2DevicesInnerStatus.md +12 -0
  74. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateJob200Response.md +13 -0
  75. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateJobRequest.md +12 -0
  76. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateJobRequestOneOf.md +18 -0
  77. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateJobRequestOneOf1.md +18 -0
  78. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateSession200Response.md +27 -0
  79. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateSession200ResponseTimestampsInner.md +12 -0
  80. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateSessionRequest.md +12 -0
  81. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateSessionRequestOneOf.md +12 -0
  82. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/CreateSessionRequestOneOf1.md +14 -0
  83. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/FindInstanceWorkloads200Response.md +15 -0
  84. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/FindInstanceWorkloads200ResponseNext.md +11 -0
  85. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/FindInstanceWorkloads200ResponsePrevious.md +11 -0
  86. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/FindInstanceWorkloads200ResponseWorkloadsInner.md +22 -0
  87. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/FindInstanceWorkloads401Response.md +11 -0
  88. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/FindInstanceWorkloads401ResponseErrorsInner.md +14 -0
  89. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetAccountConfig200Response.md +11 -0
  90. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetAccountConfig200ResponsePlansInner.md +17 -0
  91. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetInstance200Response.md +11 -0
  92. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetInstanceConfiguration200Response.md +11 -0
  93. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetUsageAnalyticsGrouped200Response.md +11 -0
  94. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetUsageAnalyticsGrouped200ResponseDataInner.md +32 -0
  95. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetUsageAnalyticsGroupedByDate200Response.md +13 -0
  96. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/GetUsageAnalyticsGroupedByDate200ResponseDataInner.md +34 -0
  97. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/InstancesApi.md +102 -0
  98. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobMetrics.md +22 -0
  99. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobMetricsBss.md +11 -0
  100. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobMetricsTimestamps.md +13 -0
  101. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobMetricsUsage.md +12 -0
  102. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobResponse.md +24 -0
  103. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobResponseProgram.md +11 -0
  104. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobResponseRemoteStorage.md +19 -0
  105. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobResponseRemoteStorageAllOfAllOfOneOf.md +15 -0
  106. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobState.md +14 -0
  107. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobsApi.md +374 -0
  108. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobsResponse.md +14 -0
  109. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/JobsTranspiledCircuitsResponse.md +11 -0
  110. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/ListBackends200Response.md +11 -0
  111. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/ListJobs400Response.md +12 -0
  112. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/ListJobs400ResponseErrorsInner.md +13 -0
  113. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/ListTags200Response.md +11 -0
  114. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/RemoteStorageJobParams.md +15 -0
  115. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/RemoteStorageLogs.md +15 -0
  116. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/RemoteStorageResults.md +15 -0
  117. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/RemoteStorageTranspiledCircuits.md +15 -0
  118. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/ReplaceInstanceDataRequest.md +11 -0
  119. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/ReplaceJobTagsRequest.md +11 -0
  120. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/SessionsApi.md +137 -0
  121. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/TagsApi.md +41 -0
  122. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/UpdateSessionStateRequest.md +11 -0
  123. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/Usage.md +11 -0
  124. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/VersionResponse.md +11 -0
  125. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/VersionsApi.md +36 -0
  126. qrmi-0.13.2/dependencies/qiskit_runtime_client/docs/WorkloadsApi.md +50 -0
  127. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/accounts_api.rs +90 -0
  128. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/analytics_api.rs +604 -0
  129. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/auth.rs +89 -0
  130. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/backends_api.rs +353 -0
  131. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/configuration.rs +57 -0
  132. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/instances_api.rs +261 -0
  133. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/jobs_api.rs +848 -0
  134. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/mod.rs +137 -0
  135. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/sessions_api.rs +279 -0
  136. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/tags_api.rs +84 -0
  137. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/versions_api.rs +67 -0
  138. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/apis/workloads_api.rs +169 -0
  139. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/lib.rs +21 -0
  140. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/analytics_filters_200_response.rs +40 -0
  141. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/analytics_filters_200_response_backends_inner.rs +24 -0
  142. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/analytics_filters_200_response_instances_inner.rs +26 -0
  143. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/analytics_filters_200_response_plans_inner.rs +24 -0
  144. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/analytics_filters_200_response_users_inner.rs +24 -0
  145. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/analytics_usage_200_response.rs +129 -0
  146. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backend_status_response.rs +45 -0
  147. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2.rs +27 -0
  148. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner.rs +73 -0
  149. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner_clops.rs +39 -0
  150. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner_performance_metrics.rs +34 -0
  151. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner_performance_metrics_two_q_error_best.rs +41 -0
  152. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner_performance_metrics_two_q_error_layered.rs +28 -0
  153. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner_processor_type.rs +52 -0
  154. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/backends_response_v2_devices_inner_status.rs +43 -0
  155. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_job_200_response.rs +45 -0
  156. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_job_request.rs +42 -0
  157. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_job_request_one_of.rs +79 -0
  158. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_job_request_one_of_1.rs +79 -0
  159. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_job_request_one_of_all_of_params.rs +35 -0
  160. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_session_200_response.rs +119 -0
  161. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_session_200_response_timestamps_inner.rs +45 -0
  162. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_session_request.rs +36 -0
  163. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_session_request_one_of.rs +52 -0
  164. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/create_session_request_one_of_1.rs +60 -0
  165. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input.rs +53 -0
  166. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options.rs +69 -0
  167. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_dynamical_decoupling.rs +85 -0
  168. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_execution.rs +33 -0
  169. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience.rs +66 -0
  170. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_layer_noise_learning.rs +54 -0
  171. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_measure_noise_learning.rs +37 -0
  172. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_measure_noise_learning_shots_per_randomization.rs +27 -0
  173. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_pec.rs +36 -0
  174. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_pec_noise_gain.rs +27 -0
  175. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_zne.rs +65 -0
  176. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/estimator_v2_input_options_resilience_zne_extrapolator.rs +27 -0
  177. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/find_instance_workloads_200_response.rs +42 -0
  178. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/find_instance_workloads_200_response_next.rs +24 -0
  179. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/find_instance_workloads_200_response_previous.rs +24 -0
  180. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/find_instance_workloads_200_response_workloads_inner.rs +122 -0
  181. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/find_instance_workloads_400_response.rs +26 -0
  182. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/find_instance_workloads_400_response_errors_inner.rs +40 -0
  183. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_account_200_response.rs +27 -0
  184. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_account_200_response_plans_inner.rs +72 -0
  185. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_instance_200_response.rs +51 -0
  186. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_instance_configuration_200_response.rs +29 -0
  187. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_usage_200_response.rs +61 -0
  188. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_usage_200_response_usage_period.rs +33 -0
  189. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_usage_analytics_grouped_200_response.rs +27 -0
  190. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_usage_analytics_grouped_200_response_data_inner.rs +134 -0
  191. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_usage_analytics_grouped_by_date_200_response.rs +39 -0
  192. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/get_usage_analytics_grouped_by_date_200_response_data_inner.rs +144 -0
  193. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_metrics.rs +63 -0
  194. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_metrics_bss.rs +27 -0
  195. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_metrics_timestamps.rs +37 -0
  196. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_metrics_usage.rs +33 -0
  197. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_response.rs +118 -0
  198. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_response_program.rs +27 -0
  199. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_response_remote_storage.rs +85 -0
  200. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_response_remote_storage_all_of_all_of_one_of.rs +70 -0
  201. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/job_state.rs +58 -0
  202. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/jobs_response.rs +41 -0
  203. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/jobs_transpiled_circuits_response.rs +27 -0
  204. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/list_jobs_400_response.rs +33 -0
  205. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/list_jobs_400_response_errors_inner.rs +35 -0
  206. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/list_tags_200_response.rs +25 -0
  207. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/mod.rs +174 -0
  208. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/noise_learner_input.rs +36 -0
  209. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/noise_learner_input_options.rs +79 -0
  210. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/remote_storage_job_params.rs +70 -0
  211. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/remote_storage_logs.rs +70 -0
  212. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/remote_storage_results.rs +70 -0
  213. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/remote_storage_transpiled_circuits.rs +69 -0
  214. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/replace_instance_configuration_request.rs +29 -0
  215. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/replace_job_tags_request.rs +27 -0
  216. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input.rs +49 -0
  217. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options.rs +48 -0
  218. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options_dynamical_decoupling.rs +85 -0
  219. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options_execution.rs +50 -0
  220. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options_simulator.rs +56 -0
  221. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options_twirling.rs +62 -0
  222. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options_twirling_num_randomizations.rs +27 -0
  223. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_options_twirling_shots_per_randomization.rs +27 -0
  224. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/sampler_v2_input_pubs_inner.rs +21 -0
  225. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/update_session_request.rs +25 -0
  226. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/usage.rs +27 -0
  227. qrmi-0.13.2/dependencies/qiskit_runtime_client/src/models/version_response.rs +24 -0
  228. qrmi-0.13.2/dependencies/quantum_system_client/Cargo.toml +49 -0
  229. qrmi-0.13.2/dependencies/quantum_system_client/README.md +165 -0
  230. qrmi-0.13.2/dependencies/quantum_system_client/src/api/backend_config.rs +58 -0
  231. qrmi-0.13.2/dependencies/quantum_system_client/src/api/backend_details.rs +51 -0
  232. qrmi-0.13.2/dependencies/quantum_system_client/src/api/backend_props.rs +54 -0
  233. qrmi-0.13.2/dependencies/quantum_system_client/src/api/backend_pulse_defaults.rs +55 -0
  234. qrmi-0.13.2/dependencies/quantum_system_client/src/api/cancel_job.rs +159 -0
  235. qrmi-0.13.2/dependencies/quantum_system_client/src/api/delete_job.rs +147 -0
  236. qrmi-0.13.2/dependencies/quantum_system_client/src/api/job_details.rs +110 -0
  237. qrmi-0.13.2/dependencies/quantum_system_client/src/api/job_status.rs +227 -0
  238. qrmi-0.13.2/dependencies/quantum_system_client/src/api/job_wait_for_final_state.rs +139 -0
  239. qrmi-0.13.2/dependencies/quantum_system_client/src/api/list_api_versions.rs +46 -0
  240. qrmi-0.13.2/dependencies/quantum_system_client/src/api/list_backends.rs +50 -0
  241. qrmi-0.13.2/dependencies/quantum_system_client/src/api/list_jobs.rs +50 -0
  242. qrmi-0.13.2/dependencies/quantum_system_client/src/api/run_job.rs +127 -0
  243. qrmi-0.13.2/dependencies/quantum_system_client/src/api/run_primitive.rs +361 -0
  244. qrmi-0.13.2/dependencies/quantum_system_client/src/api/service_version.rs +44 -0
  245. qrmi-0.13.2/dependencies/quantum_system_client/src/api.rs +29 -0
  246. qrmi-0.13.2/dependencies/quantum_system_client/src/client.rs +616 -0
  247. qrmi-0.13.2/dependencies/quantum_system_client/src/lib.rs +47 -0
  248. qrmi-0.13.2/dependencies/quantum_system_client/src/middleware/auth.rs +238 -0
  249. qrmi-0.13.2/dependencies/quantum_system_client/src/middleware.rs +12 -0
  250. qrmi-0.13.2/dependencies/quantum_system_client/src/models/auth.rs +32 -0
  251. qrmi-0.13.2/dependencies/quantum_system_client/src/models/backend_configuration.rs +210 -0
  252. qrmi-0.13.2/dependencies/quantum_system_client/src/models/backend_properties.rs +85 -0
  253. qrmi-0.13.2/dependencies/quantum_system_client/src/models/backends.rs +68 -0
  254. qrmi-0.13.2/dependencies/quantum_system_client/src/models/errors.rs +100 -0
  255. qrmi-0.13.2/dependencies/quantum_system_client/src/models/jobs.rs +255 -0
  256. qrmi-0.13.2/dependencies/quantum_system_client/src/models/version.rs +19 -0
  257. qrmi-0.13.2/dependencies/quantum_system_client/src/models/versions.rs +20 -0
  258. qrmi-0.13.2/dependencies/quantum_system_client/src/models.rs +30 -0
  259. qrmi-0.13.2/dependencies/quantum_system_client/src/storages/s3.rs +79 -0
  260. qrmi-0.13.2/dependencies/quantum_system_client/src/storages.rs +12 -0
  261. qrmi-0.13.2/dependencies/quantum_system_client/src/utils/s3.rs +331 -0
  262. qrmi-0.13.2/dependencies/quantum_system_client/src/utils/uuid.rs +28 -0
  263. qrmi-0.13.2/dependencies/quantum_system_client/src/utils.rs +15 -0
  264. qrmi-0.13.2/dependencies/quantum_system_client/tests/auth.rs +538 -0
  265. qrmi-0.13.2/dependencies/quantum_system_client/tests/backends.rs +295 -0
  266. qrmi-0.13.2/dependencies/quantum_system_client/tests/common.rs +23 -0
  267. qrmi-0.13.2/dependencies/quantum_system_client/tests/jobs.rs +410 -0
  268. qrmi-0.13.2/dependencies/quantum_system_client/tests/misc.rs +46 -0
  269. qrmi-0.13.2/dependencies/quantum_system_client/tests/run_job.rs +123 -0
  270. qrmi-0.13.2/dependencies/quantum_system_client/tests/version.rs +42 -0
  271. qrmi-0.13.2/dependencies/quantum_system_client/tests/versions.rs +104 -0
  272. qrmi-0.13.2/examples/pulser_backend/pasqal/README.md +40 -0
  273. qrmi-0.13.2/examples/pulser_backend/pasqal/pulser_backend.py +69 -0
  274. qrmi-0.13.2/examples/pulser_backend/pasqal/requirements.txt +2 -0
  275. qrmi-0.13.2/examples/pulser_backend/pasqal/send_pasqal_job_local.py +70 -0
  276. qrmi-0.13.2/examples/pulser_backend/pasqal/target.py +63 -0
  277. qrmi-0.13.2/examples/qiskit_primitives/ibm/01_chemistry_hamiltonian.ipynb +702 -0
  278. qrmi-0.13.2/examples/qiskit_primitives/ibm/README.md +112 -0
  279. qrmi-0.13.2/examples/qiskit_primitives/ibm/estimator.py +84 -0
  280. qrmi-0.13.2/examples/qiskit_primitives/ibm/requirements.txt +2 -0
  281. qrmi-0.13.2/examples/qiskit_primitives/ibm/sampler.py +76 -0
  282. qrmi-0.13.2/examples/qiskit_primitives/pasqal/README.md +48 -0
  283. qrmi-0.13.2/examples/qiskit_primitives/pasqal/requirements.txt +2 -0
  284. qrmi-0.13.2/examples/qiskit_primitives/pasqal/sampler.py +69 -0
  285. qrmi-0.13.2/examples/qrmi/README.md +9 -0
  286. qrmi-0.13.2/examples/qrmi/c/README.md +6 -0
  287. qrmi-0.13.2/examples/qrmi/c/config/CMakeLists.txt +60 -0
  288. qrmi-0.13.2/examples/qrmi/c/config/README.md +25 -0
  289. qrmi-0.13.2/examples/qrmi/c/config/src/qrmi_config.c +57 -0
  290. qrmi-0.13.2/examples/qrmi/c/ibm_quantum_system/CMakeLists.txt +61 -0
  291. qrmi-0.13.2/examples/qrmi/c/ibm_quantum_system/README.md +62 -0
  292. qrmi-0.13.2/examples/qrmi/c/ibm_quantum_system/src/common.c +66 -0
  293. qrmi-0.13.2/examples/qrmi/c/ibm_quantum_system/src/quantum_system.c +167 -0
  294. qrmi-0.13.2/examples/qrmi/c/pasqal_cloud/CMakeLists.txt +61 -0
  295. qrmi-0.13.2/examples/qrmi/c/pasqal_cloud/README.md +65 -0
  296. qrmi-0.13.2/examples/qrmi/c/pasqal_cloud/src/common.c +66 -0
  297. qrmi-0.13.2/examples/qrmi/c/pasqal_cloud/src/pasqal_cloud.c +148 -0
  298. qrmi-0.13.2/examples/qrmi/c/pasqal_local/CMakeLists.txt +65 -0
  299. qrmi-0.13.2/examples/qrmi/c/pasqal_local/README.md +52 -0
  300. qrmi-0.13.2/examples/qrmi/c/pasqal_local/src/common.c +66 -0
  301. qrmi-0.13.2/examples/qrmi/c/pasqal_local/src/pasqal_local.c +160 -0
  302. qrmi-0.13.2/examples/qrmi/c/qiskit_runtime_service/CMakeLists.txt +61 -0
  303. qrmi-0.13.2/examples/qrmi/c/qiskit_runtime_service/README.md +52 -0
  304. qrmi-0.13.2/examples/qrmi/c/qiskit_runtime_service/src/common.c +66 -0
  305. qrmi-0.13.2/examples/qrmi/c/qiskit_runtime_service/src/qiskit_runtime_service.c +157 -0
  306. qrmi-0.13.2/examples/qrmi/python/README.md +6 -0
  307. qrmi-0.13.2/examples/qrmi/python/cudaq/README.md +100 -0
  308. qrmi-0.13.2/examples/qrmi/python/cudaq/pasqal.py +38 -0
  309. qrmi-0.13.2/examples/qrmi/python/ibm_quantum_system/README.md +70 -0
  310. qrmi-0.13.2/examples/qrmi/python/ibm_quantum_system/example.py +65 -0
  311. qrmi-0.13.2/examples/qrmi/python/pasqal_cloud/README.md +87 -0
  312. qrmi-0.13.2/examples/qrmi/python/pasqal_cloud/example.py +80 -0
  313. qrmi-0.13.2/examples/qrmi/python/pasqal_local/README.md +60 -0
  314. qrmi-0.13.2/examples/qrmi/python/pasqal_local/example.py +84 -0
  315. qrmi-0.13.2/examples/qrmi/python/qiskit_runtime_service/README.md +62 -0
  316. qrmi-0.13.2/examples/qrmi/python/qiskit_runtime_service/example.py +68 -0
  317. qrmi-0.13.2/examples/qrmi/python/requirements.txt +2 -0
  318. qrmi-0.13.2/examples/task_runner/pulser/README.md +26 -0
  319. qrmi-0.13.2/examples/task_runner/pulser/requirements.txt +1 -0
  320. qrmi-0.13.2/examples/task_runner/pulser/task_runner_input.py +28 -0
  321. qrmi-0.13.2/examples/task_runner/qiskit/README.md +82 -0
  322. qrmi-0.13.2/examples/task_runner/qiskit/gen_estimator_inputs.py +149 -0
  323. qrmi-0.13.2/examples/task_runner/qiskit/gen_sampler_inputs.py +142 -0
  324. qrmi-0.13.2/examples/task_runner/qiskit/requirements.txt +3 -0
  325. qrmi-0.13.2/examples/task_runner/qpp/README.md +26 -0
  326. qrmi-0.13.2/examples/task_runner/qpp/requirements.txt +3 -0
  327. qrmi-0.13.2/examples/task_runner/qpp/task_runner_input.py +52 -0
  328. qrmi-0.13.2/pyproject.toml +70 -0
  329. qrmi-0.13.2/python/qrmi/__init__.py +21 -0
  330. qrmi-0.13.2/python/qrmi/primitives/__init__.py +20 -0
  331. qrmi-0.13.2/python/qrmi/primitives/base_estimator.py +107 -0
  332. qrmi-0.13.2/python/qrmi/primitives/base_sampler.py +100 -0
  333. qrmi-0.13.2/python/qrmi/primitives/ibm/__init__.py +18 -0
  334. qrmi-0.13.2/python/qrmi/primitives/ibm/backend.py +328 -0
  335. qrmi-0.13.2/python/qrmi/primitives/ibm/estimator.py +28 -0
  336. qrmi-0.13.2/python/qrmi/primitives/ibm/sampler.py +28 -0
  337. qrmi-0.13.2/python/qrmi/primitives/ibm/target.py +38 -0
  338. qrmi-0.13.2/python/qrmi/primitives/pasqal/README.md +0 -0
  339. qrmi-0.13.2/python/qrmi/primitives/pasqal/__init__.py +16 -0
  340. qrmi-0.13.2/python/qrmi/primitives/pasqal/sampler.py +89 -0
  341. qrmi-0.13.2/python/qrmi/primitives/pasqal/target.py +42 -0
  342. qrmi-0.13.2/python/qrmi/primitives/runtime_job_v2.py +108 -0
  343. qrmi-0.13.2/python/qrmi/primitives/service.py +92 -0
  344. qrmi-0.13.2/python/qrmi/pulser_backend/__init__.py +0 -0
  345. qrmi-0.13.2/python/qrmi/pulser_backend/backend.py +175 -0
  346. qrmi-0.13.2/python/qrmi/pulser_backend/service.py +94 -0
  347. qrmi-0.13.2/python/qrmi/py.typed +0 -0
  348. qrmi-0.13.2/python/qrmi/tools/task_runner/README.md +204 -0
  349. qrmi-0.13.2/python/qrmi/tools/task_runner/main.py +233 -0
  350. qrmi-0.13.2/python/tests/README.md +55 -0
  351. qrmi-0.13.2/python/tests/unit/pulser_backend/test_backend.py +9 -0
  352. qrmi-0.13.2/qrmi_payload_v1_schema.json +44 -0
  353. qrmi-0.13.2/requirements-dev.txt +4 -0
  354. qrmi-0.13.2/requirements-distro.txt +3 -0
  355. qrmi-0.13.2/rust-toolchain.toml +10 -0
  356. qrmi-0.13.2/src/bin/stubgen.rs +19 -0
  357. qrmi-0.13.2/src/bin/task_runner.rs +483 -0
  358. qrmi-0.13.2/src/cext.rs +1406 -0
  359. qrmi-0.13.2/src/common.rs +21 -0
  360. qrmi-0.13.2/src/consts.rs +11 -0
  361. qrmi-0.13.2/src/ibm/direct_access.rs +375 -0
  362. qrmi-0.13.2/src/ibm/qiskit_runtime_service.rs +486 -0
  363. qrmi-0.13.2/src/ibm/quantum_system.rs +375 -0
  364. qrmi-0.13.2/src/ibm/tests/direct_access.rs +40 -0
  365. qrmi-0.13.2/src/ibm/tests/qiskit_runtime_service.rs +51 -0
  366. qrmi-0.13.2/src/ibm/tests/quantum_system.rs +40 -0
  367. qrmi-0.13.2/src/ibm.rs +33 -0
  368. qrmi-0.13.2/src/lib.rs +246 -0
  369. qrmi-0.13.2/src/models/config.rs +125 -0
  370. qrmi-0.13.2/src/models/payload.rs +29 -0
  371. qrmi-0.13.2/src/models/target.rs +27 -0
  372. qrmi-0.13.2/src/models/task_result.rs +27 -0
  373. qrmi-0.13.2/src/models/task_status.rs +40 -0
  374. qrmi-0.13.2/src/models.rs +25 -0
  375. qrmi-0.13.2/src/pasqal/cloud.rs +497 -0
  376. qrmi-0.13.2/src/pasqal/local.rs +165 -0
  377. qrmi-0.13.2/src/pasqal/tests/cloud.rs +218 -0
  378. qrmi-0.13.2/src/pasqal.rs +19 -0
  379. qrmi-0.13.2/src/pyext.rs +222 -0
@@ -0,0 +1,42 @@
1
+ # This file defines the set of people responsible for different sections of the
2
+ # QRMI code.
3
+ #
4
+ # Being listed as a code owner on a section here means that user is empowered
5
+ # to approve and merge pull requests for that section of code. It also comes
6
+ # with an expected responsibility to review and maintain those subsections of
7
+ # the repository.
8
+ #
9
+ # A PR can be merged when approved by at least one codeowner. For PRs that touch
10
+ # more than one section with non-overlapping codeowners more than one codeowner
11
+ # may be required to approve a PR.
12
+ #
13
+ # However, every contributor to QRMI can (and should!) review open PRs. This
14
+ # file is just about outlining responsibility for maintainership and final
15
+ # review/merging of PRs in different subsections of the repository.
16
+
17
+ # Global rule
18
+ * @ohtanim @awennersteen @OkuyanBoga
19
+
20
+ # QRMI folders (also their corresponding tests)
21
+ /src/pasqal/ @awennersteen @MatthieuMoreau0
22
+ /python/qrmi/pulser_backend/ @awennersteen @MatthieuMoreau0
23
+ /python/qrmi/primitives/pasqal/ @awennersteen @MatthieuMoreau0
24
+ /dependencies/pasqal_cloud_client/ @awennersteen @MatthieuMoreau0
25
+ /examples/pulser_backend/ @awennersteen @MatthieuMoreau0
26
+ /examples/qiskit_primitives/pasqal/ @awennersteen @MatthieuMoreau0
27
+ /examples/**/pasqal_cloud/ @awennersteen @MatthieuMoreau0
28
+ /examples/task_runner/pulser/ @awennersteen @MatthieuMoreau0
29
+ /examples/task_runner/qpp/ @awennersteen @MatthieuMoreau0
30
+
31
+ /src/ibm/ @ohtanim @OkuyanBoga
32
+ /python/qrmi/primitives/ibm/ @ohtanim @OkuyanBoga
33
+ /dependencies/quantum_system_client/ @ohtanim @yoonho
34
+ /dependencies/qiskit_runtime_client/ @OkuyanBoga @ohtanim
35
+ /examples/qiskit_primitives/ibm/ @ohtanim @OkuyanBoga
36
+ /examples/**/qiskit_runtime_service/ @OkuyanBoga @ohtanim
37
+ /examples/**/ibm_quantum_system/ @ohtanim @yoonho
38
+ /examples/task_runner/qiskit/ @ohtanim @OkuyanBoga
39
+
40
+ # Override the release notes directories to have _no_ code owners, so any review
41
+ # from somebody with write access is acceptable.
42
+ /releasenotes/notes
@@ -0,0 +1,44 @@
1
+ name: "🐛 Bug Report"
2
+ description: We broke something, again
3
+ title: "[Bug]: "
4
+ labels: ["bug"]
5
+ body:
6
+ - type: textarea
7
+ id: bug-steps
8
+ attributes:
9
+ label: What are the steps to reproduce this issue?
10
+ placeholder: |
11
+ 1. ...
12
+ validations:
13
+ required: true
14
+
15
+ - type: textarea
16
+ id: bug-description
17
+ attributes:
18
+ label: What happens?
19
+ description: A clear and concise description of what the bug is.
20
+ validations:
21
+ required: true
22
+
23
+ - type: textarea
24
+ id: bug-expectation
25
+ attributes:
26
+ label: What were you expecting to happen?
27
+ description: A clear and concise description of what was supposed to happen.
28
+ validations:
29
+ required: true
30
+
31
+ - type: textarea
32
+ id: bug-logs
33
+ attributes:
34
+ label: Paste any relevant logs, error output, etc.
35
+ description: |
36
+ Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
37
+ (If it’s long, please paste to https://gist.github.com/ and insert the link here.)
38
+ render: shell
39
+
40
+ - type: textarea
41
+ id: bug-context
42
+ attributes:
43
+ label: Additional context
44
+ description: Add any other context you can provide about the problem here.
@@ -0,0 +1,37 @@
1
+ name: "🚀 Feature Request"
2
+ description: "I have a specific suggestion for Theos!"
3
+ labels: ["Enhancement"]
4
+ body:
5
+ - type: markdown
6
+ attributes:
7
+ value: |
8
+ **Thanks for taking the time to suggest a new feature!**
9
+
10
+ If you feel an open-ended discussion with the community and Theos maintainers would be more suitable to forming the right details for your feature request, you can post in Discussions instead.
11
+
12
+ - type: textarea
13
+ attributes:
14
+ label: What problem are you trying to solve?
15
+ description: A concise description of what the problem is.
16
+ placeholder: "e.g. as user I want to …"
17
+ validations:
18
+ required: true
19
+
20
+ - type: textarea
21
+ attributes:
22
+ label: "Describe the solution you’d like"
23
+ validations:
24
+ required: true
25
+
26
+ - type: textarea
27
+ attributes:
28
+ label: "Describe any alternatives you’ve considered"
29
+ description: |
30
+ Can you do this using other tools?
31
+ Do other popular software system have a feature for this?
32
+
33
+ - type: textarea
34
+ attributes:
35
+ label: "Documentation, Adoption, Migration Strategy"
36
+ description: |
37
+ If you can, explain how users will be able to use this and how it might be documented. Maybe a mock-up?
@@ -0,0 +1,13 @@
1
+ ## Description of Change
2
+
3
+ <!-- Please include a readable description about the change. -->
4
+
5
+ ## Checklist ✅
6
+
7
+ - [ ] Have you included a description of this change?
8
+ - [ ] Have you updated the relevant documentation to reflect this change?
9
+ - [ ] Have you made sure CI is passing before requesting a review?
10
+
11
+ ## Ticket
12
+ - [ ] Fixes #
13
+ - [ ] Is Part of #
@@ -0,0 +1,90 @@
1
+ ---
2
+ # This reusable workflow builds the libqrmi.so and the C examples
3
+ #
4
+ # Workflow inputs:
5
+ # - [required] container-image
6
+ #
7
+ # Workflow artifacts produced:
8
+ # - [uploaded] libqrmi.so
9
+ # - [uploaded] qrmi.h
10
+ # - [not uploaded] rust dependencies from the dependencies directory
11
+ # [not uploaded] rust examples from the examples/qrmi/rust directory
12
+ # - [not uploaded] C examples from the examples/qrmi/c directory
13
+ #
14
+ # Workflow dependencies:
15
+ # - None. It does not dependend on any other workflow.
16
+
17
+ name: Build libqrmi.so
18
+ on:
19
+ workflow_call:
20
+ inputs:
21
+ container-image:
22
+ description: >-
23
+ Container image that will be used to run the workflow
24
+ type: string
25
+ required: true
26
+ env:
27
+ CARGO_TERM_COLOR: always
28
+ jobs:
29
+ build:
30
+ runs-on: ubuntu-24.04
31
+ container:
32
+ image: ${{ inputs.container-image }}
33
+ steps:
34
+ - name: Checkout
35
+ uses: actions/checkout@v6
36
+
37
+ - name: Install package dependencies from distro
38
+ run: xargs dnf install -y < requirements-distro.txt
39
+
40
+ - name: Setup Rust toolchain
41
+ uses: actions-rust-lang/setup-rust-toolchain@v1
42
+
43
+ # --all-targets does not include the binaries, hence they need
44
+ # to be built separately
45
+ - name: Build libqrmi.so (includes the rust dependencies and examples)
46
+ run: cargo build --all-targets --release
47
+
48
+ # Upload artifacts to help developers with testing/debugging in their local environment
49
+ - name: Upload libqrmi qrmi.h and librqmi.so
50
+ uses: actions/upload-artifact@v6
51
+ if: ${{ success() }}
52
+ with:
53
+ name: libqrmi-artifacts
54
+ path: |
55
+ target/release/libqrmi.so
56
+ qrmi.h
57
+ if-no-files-found: error
58
+ retention-days: 5
59
+
60
+ #
61
+ # Build C examples. They depend on the libqrmi.so and qrmi.h built in the previous step.
62
+ #
63
+
64
+ - name: Build examples/qrmi/c/config
65
+ working-directory: examples/qrmi/c/config
66
+ run: |
67
+ mkdir build ; cd build
68
+ cmake ..
69
+ make
70
+
71
+ - name: Build examples/qrmi/c/ibm_quantum_system
72
+ working-directory: examples/qrmi/c/ibm_quantum_system
73
+ run: |
74
+ mkdir build ; cd build
75
+ cmake ..
76
+ make
77
+
78
+ - name: Build examples/qrmi/c/pasqal_cloud
79
+ working-directory: examples/qrmi/c/pasqal_cloud
80
+ run: |
81
+ mkdir build ; cd build
82
+ cmake ..
83
+ make
84
+
85
+ - name: Build examples/qrmi/c/qiskit_runtime_service
86
+ working-directory: examples/qrmi/c/qiskit_runtime_service
87
+ run: |
88
+ mkdir build ; cd build
89
+ cmake ..
90
+ make
@@ -0,0 +1,64 @@
1
+ ---
2
+ # This reusable workflow builds the QRMI binaries.
3
+ #
4
+ # Workflow inputs:
5
+ # - [required] python-version
6
+ # - [required] container-image
7
+ #
8
+ # Workflow artifacts produced:
9
+ # - [not uploaded] task_runner binary
10
+ # - [not uploaded] stubgen binary
11
+ #
12
+ # Workflow dependencies:
13
+ # - None. It does not dependend on any other workflow.
14
+
15
+ name: Build QRMI binaries
16
+ on:
17
+ workflow_call:
18
+ inputs:
19
+ python-version:
20
+ description: >-
21
+ Python version to build the stubgen binary
22
+ type: string
23
+ required: true
24
+ container-image:
25
+ description: >-
26
+ Container image that will be used to run the workflow
27
+ type: string
28
+ required: true
29
+ env:
30
+ CARGO_TERM_COLOR: always
31
+ jobs:
32
+ build:
33
+ runs-on: ubuntu-24.04
34
+ container:
35
+ image: ${{ inputs.container-image }}
36
+ steps:
37
+ - name: Checkout
38
+ uses: actions/checkout@v6
39
+
40
+ - name: Install package dependencies from distro
41
+ run: xargs dnf install -y < requirements-distro.txt
42
+
43
+ - name: Setup Rust toolchain
44
+ uses: actions-rust-lang/setup-rust-toolchain@v1
45
+
46
+ # The python3.12 installed using actions/setup-python@v6,
47
+ # requires a glibc version that is not available in the UBI container image
48
+ - name: Install python ${{ inputs.python-version }} from distro
49
+ run: dnf install -y python${{ inputs.python-version }}{,-pip,-devel}
50
+
51
+ - name: Create and activate venv for subsequent steps
52
+ run: |
53
+ python${{ inputs.python-version }} -m venv .venv
54
+ echo "${GITHUB_WORKSPACE}/.venv/bin" >> ${GITHUB_PATH}
55
+
56
+ - name: Install python requirements
57
+ run: pip install -r requirements-dev.txt
58
+
59
+ - name: Build task_runner
60
+ run: cargo build --bin task_runner --release --features="build-binary"
61
+
62
+ # "--features=pyo3" requires python3.x and python3.x-devel to be installed
63
+ - name: Build stubgen
64
+ run: cargo build --bin stubgen --release --features="pyo3"
@@ -0,0 +1,66 @@
1
+ ---
2
+ # This reusable workflow builds the python wheels for the QRMI package.
3
+ #
4
+ # Workflow inputs:
5
+ # - [required] python-version
6
+ # - [required] container-image
7
+ #
8
+ # Workflow artifacts produced:
9
+ # - [uploaded] qrmi-wheels for the specified Python version. File: qrmi-*.whl
10
+ #
11
+ # Workflow dependencies:
12
+ # - None. It does not depend on any other workflow.
13
+
14
+ name: Build wheels
15
+ on:
16
+ workflow_call:
17
+ inputs:
18
+ python-version:
19
+ description: >-
20
+ Python version to build the wheels
21
+ type: string
22
+ required: true
23
+ container-image:
24
+ description: >-
25
+ Container image that will be used to run the workflow
26
+ type: string
27
+ required: true
28
+ jobs:
29
+ build:
30
+ runs-on: ubuntu-24.04
31
+ container:
32
+ image: ${{ inputs.container-image }}
33
+ steps:
34
+ - name: Checkout
35
+ uses: actions/checkout@v6
36
+
37
+ - name: Install package dependencies from distro
38
+ run: xargs dnf install -y < requirements-distro.txt
39
+
40
+ - name: Setup Rust toolchain
41
+ uses: actions-rust-lang/setup-rust-toolchain@v1
42
+
43
+ # The python3.12 installed using actions/setup-python@v6,
44
+ # requires a glibc version that is not available in the UBI container image
45
+ - name: Install python ${{ inputs.python-version }} from distro
46
+ run: dnf install -y python${{ inputs.python-version }}{,-pip}
47
+
48
+ - name: Create and activate venv for subsequent steps
49
+ run: |
50
+ python${{ inputs.python-version }} -m venv .venv
51
+ echo "${GITHUB_WORKSPACE}/.venv/bin" >> ${GITHUB_PATH}
52
+
53
+ - name: Install python requirements
54
+ run: pip install -r requirements-dev.txt
55
+
56
+ - name: Build QRMI wheels
57
+ run: maturin build --release
58
+
59
+ - name: Upload QRMI wheels
60
+ uses: actions/upload-artifact@v6
61
+ if: ${{ success() }}
62
+ with:
63
+ name: qrmi-wheels
64
+ path: target/wheels/qrmi-*.whl
65
+ if-no-files-found: error
66
+ retention-days: 5
@@ -0,0 +1,68 @@
1
+ ---
2
+ # This reusable workflow runs Python format check and lint on the QRMI wheels package.
3
+ #
4
+ # Workflow inputs:
5
+ # - [required] python-version
6
+ # - [required] container-image
7
+ #
8
+ # Workflow artifacts produced:
9
+ # - None
10
+ #
11
+ # Workflow dependencies:
12
+ # - It downloads the qrmi-wheels artifact (uploaded by another workflow)
13
+
14
+ name: Lint and format check Python code
15
+ on:
16
+ workflow_call:
17
+ inputs:
18
+ python-version:
19
+ description: >-
20
+ Python version to be used to lint the code
21
+ type: string
22
+ required: true
23
+ container-image:
24
+ description: >-
25
+ Container image that will be used to run the workflow
26
+ type: string
27
+ required: true
28
+ jobs:
29
+ lint:
30
+ runs-on: ubuntu-24.04
31
+ container:
32
+ image: ${{ inputs.container-image }}
33
+ steps:
34
+ - name: Checkout
35
+ uses: actions/checkout@v6
36
+
37
+ - name: Install package dependencies from distro
38
+ run: xargs dnf install -y < requirements-distro.txt
39
+
40
+ - name: Download QRMI wheels
41
+ uses: actions/download-artifact@v6
42
+ with:
43
+ name: qrmi-wheels
44
+
45
+ - name: Setup Rust toolchain
46
+ uses: actions-rust-lang/setup-rust-toolchain@v1
47
+
48
+ # The python3.12 installed using actions/setup-python@v6,
49
+ # requires a glibc version that is not available in the UBI container image
50
+ - name: Install python ${{ inputs.python-version }} from distro
51
+ run: dnf install -y python${{ inputs.python-version }}{,-pip}
52
+
53
+ - name: Create and activate venv for subsequent steps
54
+ run: |
55
+ python${{ inputs.python-version }} -m venv .venv
56
+ echo "${GITHUB_WORKSPACE}/.venv/bin" >> ${GITHUB_PATH}
57
+
58
+ - name: Install python requirements
59
+ run: pip install -r requirements-dev.txt
60
+
61
+ - name: Install QRMI wheels
62
+ run: pip install qrmi-*.whl
63
+
64
+ - name: Format check with black
65
+ run: black --check ./python
66
+
67
+ - name: Lint with pylint
68
+ run: pylint ./python
@@ -0,0 +1,72 @@
1
+ ---
2
+ # This reusable workflow runs Rust format check and lint on librqmi, dependencies, examples and binaries.
3
+ #
4
+ # Workflow inputs:
5
+ # - [required] python-version
6
+ # - [required] container-image
7
+ #
8
+ # Workflow artifacts produced:
9
+ # - None
10
+ #
11
+ # Workflow dependencies:
12
+ # - None. It does not depend on any other workflow.
13
+
14
+ name: Lint and format check Rust code
15
+ on:
16
+ workflow_call:
17
+ inputs:
18
+ python-version:
19
+ description: >-
20
+ Python version to lint the stubgen
21
+ type: string
22
+ required: true
23
+ container-image:
24
+ description: >-
25
+ Container image that will be used to run the workflow
26
+ type: string
27
+ required: true
28
+ env:
29
+ CARGO_TERM_COLOR: always
30
+ jobs:
31
+ lint:
32
+ runs-on: ubuntu-24.04
33
+ container:
34
+ image: ${{ inputs.container-image }}
35
+ steps:
36
+ - name: Checkout
37
+ uses: actions/checkout@v6
38
+
39
+ - name: Install package dependencies from distro
40
+ run: xargs dnf install -y < requirements-distro.txt
41
+
42
+ - name: Setup Rust toolchain
43
+ uses: actions-rust-lang/setup-rust-toolchain@v1
44
+ with:
45
+ components: rustfmt, clippy
46
+
47
+ # The python3.12 installed using actions/setup-python@v6,
48
+ # requires a glibc version that is not available in the UBI container image
49
+ - name: Install python ${{ inputs.python-version }} from distro
50
+ run: dnf install -y python${{ inputs.python-version }}{,-pip,-devel}
51
+
52
+ - name: Create and activate venv for subsequent steps
53
+ run: |
54
+ python${{ inputs.python-version }} -m venv .venv
55
+ echo "${GITHUB_WORKSPACE}/.venv/bin" >> ${GITHUB_PATH}
56
+
57
+ - name: Install python requirements
58
+ run: pip install -r requirements-dev.txt
59
+
60
+ - name: Format check libqrmi.so (includes dependencies, examples and binaries)
61
+ run: cargo fmt --all --check --verbose
62
+
63
+ # --all-targets does not include the binaries
64
+ - name: Lint libqrmi.so (includes dependencies and examples)
65
+ run: cargo clippy --all-targets -- -D warnings
66
+
67
+ - name: Lint task_runner
68
+ run: cargo clippy --bin task_runner --features="build-binary" -- -D warnings
69
+
70
+ # --features="pyo3" requires python3.x and python3.x-devel to be installed
71
+ - name: Lint stubgen
72
+ run: cargo clippy --bin stubgen --features="pyo3" -- -D warnings
@@ -0,0 +1,79 @@
1
+ ---
2
+ # This workflow defines the CI pipeline for pull requests to the main branch.
3
+ # Other workflows are called as jobs, preferably in parallel. The jobs annotated with the needs keyword will run sequentially.
4
+ #
5
+ # Workflow inputs:
6
+ # - None
7
+ #
8
+ # Workflow artifacts produced:
9
+ # - qrmi-wheels artifact (uploaded in the build-wheels job)
10
+ #
11
+ # Workflow dependencies:
12
+ # - All reusable workflows called in the jobs section
13
+
14
+ name: Pull request
15
+
16
+ on:
17
+ pull_request:
18
+ branches: [ "main" ]
19
+
20
+ concurrency:
21
+ group: ${{ github.repository }}-${{ github.ref }}-${{ github.head_ref }}-${{ github.workflow }}
22
+ cancel-in-progress: true
23
+
24
+ jobs:
25
+
26
+ build-libqrmi:
27
+ if: github.repository_owner == 'qiskit-community'
28
+ name: Build libqrmi
29
+ uses: ./.github/workflows/build-libqrmi.yml
30
+ with:
31
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'
32
+
33
+ build-qrmi-bins:
34
+ if: github.repository_owner == 'qiskit-community'
35
+ name: Build QRMI binaries
36
+ uses: ./.github/workflows/build-qrmi-bins.yml
37
+ with:
38
+ python-version: "3.12"
39
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'
40
+
41
+ lint-fmt-rust:
42
+ if: github.repository_owner == 'qiskit-community'
43
+ name: Lint and format check Rust code
44
+ uses: ./.github/workflows/lint-fmt-rust.yml
45
+ with:
46
+ python-version: "3.12"
47
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'
48
+
49
+ unittest-rust:
50
+ if: github.repository_owner == 'qiskit-community'
51
+ name: Unittest Rust code
52
+ uses: ./.github/workflows/unittest-rust.yml
53
+ with:
54
+ python-version: "3.12"
55
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'
56
+
57
+ build-wheels:
58
+ if: github.repository_owner == 'qiskit-community'
59
+ name: Build wheels
60
+ uses: ./.github/workflows/build-wheels.yml
61
+ with:
62
+ python-version: "3.12"
63
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'
64
+
65
+ lint-fmt-python:
66
+ if: github.repository_owner == 'qiskit-community'
67
+ needs: build-wheels
68
+ uses: ./.github/workflows/lint-fmt-python.yml
69
+ with:
70
+ python-version: "3.12"
71
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'
72
+
73
+ unittest-python:
74
+ if: github.repository_owner == 'qiskit-community'
75
+ needs: build-wheels
76
+ uses: ./.github/workflows/unittest-python.yml
77
+ with:
78
+ python-version: "3.12"
79
+ container-image: 'registry.access.redhat.com/ubi8/ubi:8.10'