---
title: Qiskit 0.26 release notes
description: Changes made in Qiskit 0.26
source: https://eu-de.quantum.cloud.ibm.com/docs/en/api/qiskit/release-notes/0.26
---

# Qiskit 0.26 release notes

## 0.26.1

### Terra 0.17.4

#### Bug Fixes

- Fixed an issue with the [`QuantumInstance`](/docs/api/qiskit/0.46/qiskit.utils.QuantumInstance "qiskit.utils.QuantumInstance") with [`BackendV1`](/docs/api/qiskit/0.46/qiskit.providers.BackendV1 "qiskit.providers.BackendV1") backends with the `` `max_experiments `` attribute set to a value less than the number of circuits to run. Previously the [`QuantumInstance`](/docs/api/qiskit/0.46/qiskit.utils.QuantumInstance "qiskit.utils.QuantumInstance") would not correctly split the circuits to run into separate jobs, which has been corrected.

### Aer 0.8.2

No change

### Ignis 0.6.0

No change

### Aqua 0.9.1

No change

### IBM Q Provider 0.13.1

No change

## 0.26.0

### Terra 0.17.3

#### Prelude

This release includes 2 new classes, [`ProbDistribution`](/docs/api/qiskit/0.46/qiskit.result.ProbDistribution "qiskit.result.ProbDistribution") and [`QuasiDistribution`](/docs/api/qiskit/0.46/qiskit.result.QuasiDistribution "qiskit.result.QuasiDistribution"), which were needed for compatibility with the recent qiskit-ibmq-provider release’s beta support for the [qiskit-runtime](https://github.com/Qiskit-Partners/qiskit-runtime). These were only added for compatibility with that new feature in the qiskit-ibmq-provider release and the API for these classes is considered experimental and not considered stable for the 0.17.x release series. The interface may change when 0.18.0 is released in the future.

#### Bug Fixes

- Fixed an issue in [`plot_histogram()`](/docs/api/qiskit/0.46/qiskit.visualization.plot_histogram "qiskit.visualization.plot_histogram") function where a `ValueError` would be raised when the function run on distributions with unequal lengths.

### Aer 0.8.2

No change

### Ignis 0.6.0

No change

### Aqua 0.9.1

No change

### IBM Q Provider 0.13.1

#### Prelude

This release introduces a new feature `Qiskit Runtime Service`. Qiskit Runtime is a new architecture offered by IBM Quantum that significantly reduces waiting time during computational iterations. You can execute your experiments near the quantum hardware, without the interactions of multiple layers of classical and quantum hardware slowing it down.

Qiskit Runtime allows authorized users to upload their Qiskit quantum programs, which are Python code that takes certain inputs, performs quantum and maybe classical computation, and returns the processing results. The same or other authorized users can then invoke these quantum programs by simply passing in the required input parameters.

Note that Qiskit Runtime is currently in private beta for select account but will be released to the public in the near future.

#### New Features

- `qiskit.providers.ibmq.experiment.analysis_result.AnalysisResult` now has an additional `verified` attribute which identifies if the `quality` has been verified by a human.

- `qiskit.providers.ibmq.experiment.Experiment` now has an additional `notes` attribute which can be used to set notes on an experiment.

- This release introduces a new feature `Qiskit Runtime Service`. Qiskit Runtime is a new architecture that significantly reduces waiting time during computational iterations. This new service allows authorized users to upload their Qiskit quantum programs, which are Python code that takes certain inputs, performs quantum and maybe classical computation, and returns the processing results. The same or other authorized users can then invoke these quantum programs by simply passing in the required input parameters.

  An example of using this new service:

  ```python
  from qiskit import IBMQ

  provider = IBMQ.load_account()
  # Print all avaiable programs.
  provider.runtime.pprint_programs()

  # Prepare the inputs. See program documentation on input parameters.
  inputs = {...}
  options = {"backend_name": provider.backend.ibmq_montreal.name()}

  job = provider.runtime.run(program_id="runtime-simple",
                             options=options,
                             inputs=inputs)
  # Check job status.
  print(f"job status is {job.status()}")

  # Get job result.
  result = job.result()
  ```

#### Upgrade Notes

- The deprecated `Human Bad`, `Computer Bad`, `Computer Good` and `Human Good` enum values have been removed from `qiskit.providers.ibmq.experiment.constants.ResultQuality`. They are replaced with `Bad` and `Good` values which should be used with the `verified` attribute on `qiskit.providers.ibmq.experiment.analysis_result.AnalysisResult`:

  | Old Quality   | New Quality | Verified |
  | ------------- | ----------- | -------- |
  | Human Bad     | Bad         | True     |
  | Computer Bad  | Bad         | False    |
  | Computer Good | Good        | False    |
  | Human Good    | Good        | True     |

  Furthermore, the `NO_INFORMATION` enum has been renamed to `UNKNOWN`.

- The `qiskit.providers.ibmq.IBMQBackend.defaults()` method now always returns pulse defaults if they are available, regardless whether open pulse is enabled for the provider.

#### Bug Fixes

- Fixes the issue wherein passing in a noise model when sending a job to an IBMQ simulator would raise a `TypeError`. Fixes [#894](https://github.com/Qiskit/qiskit-ibmq-provider/issues/894)

#### Other Notes

- The `qiskit.providers.ibmq.experiment.analysis_result.AnalysisResult` `fit` attribute is now optional.
