Added
- Custom pytest decorator to mark remote tests ([735](https://github.com/qBraid/qBraid/pull/735))
- Attribute `simulator` of type `bool` to `qbraid.runtime.TargetProfile` to replace `qbraid.runtime.DeviceType` ([735](https://github.com/qBraid/qBraid/pull/735))
- Attribute `local` of type `bool` to `qbraid.runtime.ibm.QiskitBackend.profile` to replace `qbraid.runtime.DeviceType` ([735](https://github.com/qBraid/qBraid/pull/735))
- Method `qbraid.runtime.GateModelResultBuilder.counts_to_measurements` to abstract redundant code from subclasses ([735](https://github.com/qBraid/qBraid/pull/735))
Improved / Modified
- Values of `qbraid.runtime.DeviceActionType` Enum to correspond to programs modules ([735](https://github.com/qBraid/qBraid/pull/735))
- Static type checking in compliance with `mypy` ([735](https://github.com/qBraid/qBraid/pull/735))
- Renamed `qbraid.runtime.GateModelResultBuilder.raw_counts` $\rightarrow$ `get_counts` ([735](https://github.com/qBraid/qBraid/pull/735))
- Updated `qbraid.runtime.TargetProfile` for more idiomatic usage of `pydantic.BaseModel` for field validation and property access ([735](https://github.com/qBraid/qBraid/pull/735))
- `qbraid.runtime.GateModelResultBuilder.measurements` now returns `None` by default instead of being abstract method. ([735](https://github.com/qBraid/qBraid/pull/735))
Removed
- `qbraid.runtime.DeviceType` Enum ([735](https://github.com/qBraid/qBraid/pull/735))
- PR compliance workflow ([735](https://github.com/qBraid/qBraid/pull/735))
Fixed
- qiskit runtime job is terminal state check bug ([735](https://github.com/qBraid/qBraid/pull/735))
- OQC provider get_devices and device status method bugs. Fixed by adding json decoding step ([738](https://github.com/qBraid/qBraid/pull/738))
Dependencies
- Bumped qiskit dependency to qiskit>=0.44,<1.3 ([737](https://github.com/qBraid/qBraid/pull/737))