Add generate_diagnostic_report method to ScheduableGettable (QAE-95)
Explanation of changes
Added a method to ScheduleGettable
to save its internal state to a zip-file.
The goal is that the compilation and execution of a schedule can be replicated from this zip-file alone
To Do:
- It might be a good idea to also save the compiled schedule in case compilation cannot be replicated. (this will happen if the user is using their own definitions for operatiosn and pulses)
- For schedules compiled with the qblox backend, there is some more information that we could store, it would be nice to add this as well, probably as an extra function in the backend.
Motivation of changes
This method was added at the ScheduleGettable
layer since it is currently the place that combines knowledge on the hardware/device config, schedule and connected hardware. Any lower level currently does not contain all information.
Merge checklist
See also merge request guidelines
-
Merge request has been reviewed and approved by a project maintainer. -
Merge request contains a clear description of the proposed changes and the issue it addresses. -
Merge request made onto appropriate branch (main for most MRs). -
New code is fully tested. -
New code is documented and docstrings use numpydoc format. -
CHANGELOG.rst
andAUTHORS.rst
have been updated (when applicable). -
CI pipelines pass -
pre-commit run --all-files --hook-stage commit
passes (gitlab-ci), - test suite passes (gitlab-ci),
- no degradation in code-coverage (codacy),
- no (serious) new pylint code quality issues introduced (codacy),
- documentation builds successfully (CI and readthedocs),
-
windows tests pass (manually triggered by maintainers before merging).
-
For reference, the issues workflow is described in the contribution guidelines.
Edited by Edgar Reehuis