Replace mutables in defaults
This is an unfortunate Python's peculiarity
Defaults parameters cannot be mutable as it's a recipe for disaster, read https://docs.python-guide.org/writing/gotchas/ for examples.
Thus, we need to change all default to either immutable or None
I spotted it in command_creator
: https://gitlab.npl.co.uk/quantum-hardware-abstraction-layer/qhal/-/blob/dev/qhal/hal/_commands.py#L163
This can backfire where this function is used with defaults, like here: https://gitlab.npl.co.uk/quantum-hardware-abstraction-layer/qhal/-/blob/dev/test/test_qasm_conversion.py#L36
What to do
Replace mutable defaults with either immutable or None
in the codebase
Edited by Anton Buyskikh