iqm-pulse 9.20.0__tar.gz → 9.21.0__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.
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/CHANGELOG.rst +8 -0
- {iqm_pulse-9.20.0/src/iqm_pulse.egg-info → iqm_pulse-9.21.0}/PKG-INFO +1 -1
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/builder.py +5 -3
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0/src/iqm_pulse.egg-info}/PKG-INFO +1 -1
- iqm_pulse-9.21.0/version.txt +1 -0
- iqm_pulse-9.20.0/version.txt +0 -1
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/LICENSE.txt +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/MANIFEST.in +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/README.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/API.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/Makefile +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/.gitignore +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/css/custom.css +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/images/favicon.ico +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/images/feedback_timing.svg +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/images/logo.png +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/images/playlist_breakdown.svg +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/images/pulse_timing.svg +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_static/images/readout_timing.svg +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_templates/autosummary-class-template.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/_templates/autosummary-module-template.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/changelog.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/concepts.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/conf.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/custom_gates.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/index.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/license.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/pulse_timing.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/references.bib +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/references.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/docs/using_builder.rst +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/pyproject.toml +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/requirements/base.in +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/requirements/base.txt +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/setup.cfg +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/setup.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/__init__.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/base_utils.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/circuit_operations.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gate_implementation.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/__init__.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/barrier.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/conditional.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/cz.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/default_gates.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/delay.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/enums.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/flux_multiplexer.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/measure.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/move.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/prx.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/reset.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/rz.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/sx.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/gates/u.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/__init__.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/channel.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/fast_drag.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/hd_drag.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/instructions.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/playlist.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/schedule.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/__init__.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/base.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/templates/playlist_inspection.jinja2 +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/templates/static/logo.png +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/templates/static/moment.min.js +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/templates/static/vis-timeline-graph2d.min.css +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/templates/static/vis-timeline-graph2d.min.js +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/waveforms.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/py.typed +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/quantum_ops.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/scheduler.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/timebox.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/utils.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/validation.py +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm_pulse.egg-info/SOURCES.txt +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm_pulse.egg-info/dependency_links.txt +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm_pulse.egg-info/requires.txt +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm_pulse.egg-info/top_level.txt +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/tests/.pylintrc +0 -0
- {iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/tests/__init__.py +0 -0
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
Changelog
|
|
3
3
|
=========
|
|
4
4
|
|
|
5
|
+
Version 9.21.0 (2025-07-10)
|
|
6
|
+
===========================
|
|
7
|
+
|
|
8
|
+
Bug fixes
|
|
9
|
+
---------
|
|
10
|
+
|
|
11
|
+
- Fix instructions with same field names being treated as equal in building the playlist
|
|
12
|
+
|
|
5
13
|
Version 9.20.0 (2025-07-09)
|
|
6
14
|
===========================
|
|
7
15
|
|
|
@@ -1311,7 +1311,7 @@ class ScheduleBuilder:
|
|
|
1311
1311
|
}
|
|
1312
1312
|
|
|
1313
1313
|
pl = Playlist()
|
|
1314
|
-
mapped_instructions: dict[str, dict[int, Any]] = {}
|
|
1314
|
+
mapped_instructions: dict[str, dict[int | Instruction, Any]] = {}
|
|
1315
1315
|
|
|
1316
1316
|
def _append_to_schedule(sc_schedule: SC_Schedule, channel_name: str, instr: Instruction) -> None:
|
|
1317
1317
|
"""Append ``instr`` to ``sc_schedule`` into the channel``channel_name``."""
|
|
@@ -1320,10 +1320,12 @@ class ScheduleBuilder:
|
|
|
1320
1320
|
# 2 dataclasses can have the same hash if their fields are identical. We must
|
|
1321
1321
|
# distinguish between different Waveform classes which may have identical fields,
|
|
1322
1322
|
# so we use the instruction itself as a key, so that the class is checked too.
|
|
1323
|
-
instr_id =
|
|
1323
|
+
instr_id = instr # type: ignore[attr-defined]
|
|
1324
|
+
is_mapped = instr_id in mapped_instructions.setdefault(channel_name, {})
|
|
1324
1325
|
except TypeError:
|
|
1325
1326
|
instr_id = instr.id # type: ignore[attr-defined]
|
|
1326
|
-
|
|
1327
|
+
is_mapped = instr_id in mapped_instructions.setdefault(channel_name, {})
|
|
1328
|
+
if not is_mapped:
|
|
1327
1329
|
mapped = _map_instruction(instr)
|
|
1328
1330
|
idx = pl.channel_descriptions[channel_name].add_instruction(mapped)
|
|
1329
1331
|
sc_schedule.instructions.setdefault(channel_name, []).append(idx)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
9.21.0
|
iqm_pulse-9.20.0/version.txt
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
9.20.0
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iqm_pulse-9.20.0 → iqm_pulse-9.21.0}/src/iqm/pulse/playlist/visualisation/templates/static/logo.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|