Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate qiskit.extensions #6861

Closed
kdk opened this issue Aug 3, 2021 · 3 comments · Fixed by #10725
Closed

Deprecate qiskit.extensions #6861

kdk opened this issue Aug 3, 2021 · 3 comments · Fixed by #10725
Labels
synthesis type: enhancement It's working, but needs polishing
Milestone

Comments

@kdk
Copy link
Member

kdk commented Aug 3, 2021

What is the expected enhancement?

Following #4699 and #4311 and others, the qiskit.extensions folder should be empty and can be deprecated and removed.

@kdk kdk added type: enhancement It's working, but needs polishing synthesis labels Aug 3, 2021
@kdk kdk added this to the 0.25.0 milestone Jun 9, 2023
@kdk kdk removed this from the 0.25.0 milestone Jun 29, 2023
@mtreinish
Copy link
Member

I opened up #10646 just now and missed that this already existed. I had these details in there about how we can go about making this change:

The qiskit.extensions module is a historical artifact that predates the existence of the circuit library. As we're stabilizing and unifying interface we should remove this standalone module and migrate or remove the classes defined in it. Right now there are the following things in the module:

  • UnitaryGate
  • Initialize
  • Snapshot
  • HamiltonianGate
  • SingleQubitUnitary
  • UCPauliRotGate
  • UCRXGate
  • UCRYGate
  • UCRYGate
  • Isometry
  • DiagonalGate
  • MCGupDiag
  • UCGate

As a first step we should migrate these class definitions to live in the circuit library and add a redirect shim that will emit a deprecation warning for anything using qiskit.extensions. In parallel we should take inventory of these classes and individually deprecate any class which doesn't provide value anymore and stage those for removal.

@kdk kdk added this to the 0.45.0 milestone Aug 16, 2023
@ewinston
Copy link
Contributor

What are the thoughts about which of these should be deprecated?

@ShellyGarion ShellyGarion linked a pull request Sep 1, 2023 that will close this issue
@Cryoris
Copy link
Contributor

Cryoris commented Sep 6, 2023

@ewinston Only Snapshot and SingleQubitUnitary for now, I added some explanations in #10725.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
synthesis type: enhancement It's working, but needs polishing
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants