1
$\begingroup$

Recently I've got a new machine and had to start over again (Qiskit installation).

As this was not my first time in creating a Qiskit environment on Anaconda, I was able to work out the errors.

But someone starting afresh will have trouble mitigating errors. And hence would like to find out the stable Python version!

$\endgroup$
  • $\begingroup$ In your new environment were you using python 3.8 (I believe this is the newest version)? If so, there are some issues with pip installing qiskit because some of the required packages (first one that I notice when trying to install is pyscf) need to push releases for this python version. For now, If you create your environment with python=3.7 that should install Python 3.7.5 into your environment. This version will not pose any errors when pip installing qiskit. As met927 had said answered, you can also use 3.5 or later $\endgroup$ – Matthew Stypulkoski Nov 8 at 14:21
  • $\begingroup$ MatthewStypulkoski - Yes I understand that, Like I mentioned I was able to work out the errors (only because I have installed Qiskit earlier) but someone starting up afresh will find it difficult and hence was wondering what's the best way to handle this! Just as @met927 pointed to the documentation where it says Python 3.5 or later, and Issues with python 3.8 makes the documentation look silly (given that 3.8 is later version than 3.5) And hence I was hoping to make this information dynamic on documentation somehow! just don't know how can I achieve that and hence I seek help! $\endgroup$ – aman kumar Nov 12 at 7:38
2
$\begingroup$

The python version that is supported by Qiskit is supported is written in the documentation here - Qiskit supports Python 3.5 or later.

$\endgroup$
2
$\begingroup$

If you're just trying to figure out which specific versions a released version of qiskit works with we document that in the trove classifiers in the package metadata for that release, see: https://pypi.org/project/qiskit/ on the bottom left under "Programming Language". The meta-package there and all the individual elements have the same metadata in the package.

But if you're trying to answer the question more generally outside of a specific released package, then Qiskit strives to support all currently supported versions of python. For right now that's >=3.5. It will be >=3.6 in September 2020 when the upstream python community drops support for python 3.5. The problem with python 3.8 right now though is that new version updates do not happen in a vacuum and can't happen instantly. Python 3.8 was released less than 1 month ago and the entire python ecosystem is working to both make sure code is updated to work with the new version (because new python versions are never 100% compatible) and push out releases with binary wheels that support the new version (because all packages with compiled extensions need to be rebuilt for new versions).

For qiskit this is also true, there are several patches to add python 3.8 support to multiple elements already Qiskit/qiskit-terra#3268 Qiskit/qiskit-aer#428 Qiskit/qiskit-ignis#298 but until this week we weren't even in a place where we could install all of qiskit's upstream dependencies on python 3.8 (and some are still missing, but it's not blocking testing). The difficulties with python 3.8 right now are just a temporary blip that is happening right now because new release is so recent. Things will likely all be sorted within the next month and won't be a problem again (well at least for another 12-18 months when python 3.9 is released)

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.