iqm-exa-common 26.14__tar.gz → 26.16__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 (81) hide show
  1. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/CHANGELOG.rst +16 -0
  2. {iqm_exa_common-26.14/src/iqm_exa_common.egg-info → iqm_exa_common-26.16}/PKG-INFO +1 -1
  3. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/data/setting_node.py +3 -3
  4. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/qcm_data/chip_topology.py +16 -0
  5. {iqm_exa_common-26.14 → iqm_exa_common-26.16/src/iqm_exa_common.egg-info}/PKG-INFO +1 -1
  6. iqm_exa_common-26.16/version.txt +1 -0
  7. iqm_exa_common-26.14/version.txt +0 -1
  8. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/LICENSE.txt +0 -0
  9. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/MANIFEST.in +0 -0
  10. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/README.rst +0 -0
  11. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/API.rst +0 -0
  12. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/Makefile +0 -0
  13. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/_static/.gitignore +0 -0
  14. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/_static/css/custom.css +0 -0
  15. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/_static/images/favicon.ico +0 -0
  16. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/_static/images/logo.png +0 -0
  17. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/_templates/autosummary-class-template.rst +0 -0
  18. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/_templates/autosummary-module-template.rst +0 -0
  19. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/changelog.rst +0 -0
  20. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/conf.py +0 -0
  21. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/index.rst +0 -0
  22. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/docs/license.rst +0 -0
  23. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/pyproject.toml +0 -0
  24. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/requirements/base.in +0 -0
  25. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/requirements/base.txt +0 -0
  26. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/setup.cfg +0 -0
  27. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/setup.py +0 -0
  28. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/__init__.py +0 -0
  29. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/__init__.py +0 -0
  30. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/__init__.py +0 -0
  31. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/_parameter.py +0 -0
  32. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/array.py +0 -0
  33. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/datum.py +0 -0
  34. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/nd_sweep.py +0 -0
  35. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/sequence.py +0 -0
  36. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/api/proto_serialization/setting_node.py +0 -0
  37. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/__init__.py +0 -0
  38. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/__init__.py +0 -0
  39. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/exponential_sweep.py +0 -0
  40. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/fixed_sweep.py +0 -0
  41. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/linear_sweep.py +0 -0
  42. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/__init__.py +0 -0
  43. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/center_span_base_options.py +0 -0
  44. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/center_span_options.py +0 -0
  45. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/constants.py +0 -0
  46. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/fixed_options.py +0 -0
  47. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/option_converter.py +0 -0
  48. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/start_stop_base_options.py +0 -0
  49. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/start_stop_options.py +0 -0
  50. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/option/sweep_options.py +0 -0
  51. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/sweep.py +0 -0
  52. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/control/sweep/sweep_values.py +0 -0
  53. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/data/__init__.py +0 -0
  54. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/data/base_model.py +0 -0
  55. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/data/parameter.py +0 -0
  56. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/data/settingnode_v2.html.jinja2 +0 -0
  57. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/data/value.py +0 -0
  58. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/errors/__init__.py +0 -0
  59. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/errors/exa_error.py +0 -0
  60. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/errors/server_errors.py +0 -0
  61. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/__init__.py +0 -0
  62. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/data_helper.py +0 -0
  63. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/deprecation.py +0 -0
  64. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/json_helper.py +0 -0
  65. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/numpy_helper.py +0 -0
  66. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/software_version_helper.py +0 -0
  67. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/helpers/yaml_helper.py +0 -0
  68. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/logger/__init__.py +0 -0
  69. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/logger/logger.py +0 -0
  70. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/qcm_data/__init__.py +0 -0
  71. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/qcm_data/chad_model.py +0 -0
  72. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/qcm_data/file_adapter.py +0 -0
  73. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/qcm_data/immutable_base_model.py +0 -0
  74. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/qcm_data/qcm_data_client.py +0 -0
  75. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/sweep/__init__.py +0 -0
  76. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/sweep/database_serialization.py +0 -0
  77. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/exa/common/sweep/util.py +0 -0
  78. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/iqm_exa_common.egg-info/SOURCES.txt +0 -0
  79. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/iqm_exa_common.egg-info/dependency_links.txt +0 -0
  80. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/iqm_exa_common.egg-info/requires.txt +0 -0
  81. {iqm_exa_common-26.14 → iqm_exa_common-26.16}/src/iqm_exa_common.egg-info/top_level.txt +0 -0
@@ -2,6 +2,22 @@
2
2
  Changelog
3
3
  =========
4
4
 
5
+ Version 26.16 (2025-05-06)
6
+ ==========================
7
+
8
+ Bug fixes
9
+ ---------
10
+
11
+ - Fix copy deprecation warning.
12
+
13
+ Version 26.15 (2025-04-29)
14
+ ==========================
15
+
16
+ Features
17
+ --------
18
+
19
+ - Add method ``ChipTopology.get_connected_coupler_map``, which returns a dictionary mapping couplers to components based on the output of ``ChipTopology.get_connecting_couplers``.
20
+
5
21
  Version 26.14 (2025-04-22)
6
22
  ==========================
7
23
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: iqm-exa-common
3
- Version: 26.14
3
+ Version: 26.16
4
4
  Summary: Framework for control and measurement of superconducting qubits: common library
5
5
  Author-email: IQM Finland Oy <info@meetiqm.com>
6
6
  License: Apache License
@@ -339,7 +339,7 @@ class SettingNode(BaseModel):
339
339
  if isinstance(child, Setting):
340
340
  update_dict = {"path": update_path}
341
341
  if self.align_name:
342
- update_dict["parameter"] = child.parameter.copy(name=update_path)
342
+ update_dict["parameter"] = child.parameter.model_copy(update={"name": update_path})
343
343
  self[key] = child.model_copy(update=update_dict)
344
344
  elif self.align_name:
345
345
  self[key] = Setting(
@@ -574,9 +574,9 @@ class SettingNode(BaseModel):
574
574
  for key, item in first.settings.items():
575
575
  if merge_nones or item.value is not None:
576
576
  if align_name:
577
- new[key] = item.copy(name=item.name.replace(f"{first.name}.", ""))
577
+ new[key] = item.model_copy(update={"name": item.name.replace(f"{first.name}.", "")})
578
578
  else:
579
- new.settings[key] = item.copy()
579
+ new.settings[key] = item.model_copy()
580
580
  for key, item in first.subtrees.items():
581
581
  item_copy = item.model_copy(update={"name": item.name.replace(f"{first.name}.", "")}, deep=deep_copy)
582
582
  subs = new if align_name else new.subtrees
@@ -244,6 +244,22 @@ class ChipTopology:
244
244
  """Get probelines that are connected to any of the given components."""
245
245
  return {self.component_to_probe_line[c] for c in components}
246
246
 
247
+ def get_connected_coupler_map(self, components: Collection[str]) -> ComponentMap:
248
+ """Returns a `ComponentMap`, including only the couplers between components that both are in the given subset.
249
+
250
+ Args:
251
+ components: Collection of coupled components to restrict the returned couplers.
252
+
253
+ Returns:
254
+ A `ComponentMap`, a dict mapping coupler names to the names of the coupled components.
255
+
256
+ """
257
+ return {
258
+ key: values
259
+ for key, values in self.coupler_to_components.items()
260
+ if (key in self.get_connecting_couplers(components))
261
+ }
262
+
247
263
  @staticmethod
248
264
  def limit_values(dct: ComponentMap, limit_to: Collection[str]) -> ComponentMap:
249
265
  """Prunes the given dictionary (e.g. a coupler-to-qubits map) to a subset of values.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: iqm-exa-common
3
- Version: 26.14
3
+ Version: 26.16
4
4
  Summary: Framework for control and measurement of superconducting qubits: common library
5
5
  Author-email: IQM Finland Oy <info@meetiqm.com>
6
6
  License: Apache License
@@ -0,0 +1 @@
1
+ 26.16
@@ -1 +0,0 @@
1
- 26.14
File without changes
File without changes