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

qmca with python 3 #1287

Closed
ye-luo opened this issue Dec 27, 2018 · 8 comments
Closed

qmca with python 3 #1287

ye-luo opened this issue Dec 27, 2018 · 8 comments

Comments

@ye-luo
Copy link
Contributor

ye-luo commented Dec 27, 2018

With the python/3.7.0 module on Summit, I got the following error

$ qmca
  File "/ccs/home/yeluo/opt/qmcpack/nexus/bin/qmca", line 415
    exec 'obeys_rule='+rule
                     ^
SyntaxError: Missing parentheses in call to 'exec'
@ye-luo ye-luo added the bug label Dec 27, 2018
@prckent
Copy link
Contributor

prckent commented Dec 31, 2018

Summit has a python2 module. Does this work for you?

@markdewing
Copy link
Contributor

Some of the Python 2 features in qmca are unused, as they are part of a generic infrastructure copied from the reset of Nexus. The I think the infrastructure code has also drifted from that in the rest of Nexus (?).

The options in fixing qmca are

  1. Update code to use Python 3 in qmca, but keep all the infrastructure (problem is this code is not used and has no tests, so it's not clear if fixes would work)
  2. Remove unused infrastructure code in qmca (would eliminate some of the Python 2/3 incompatibilities), but might make the infrastructure code out of sync with the rest of Nexus.
  3. Update common infrastructure with Nexus to be Python 2/3 compatible, and incorporate that into qmca.

@prckent
Copy link
Contributor

prckent commented Dec 31, 2018

Provided the python 2 module works on Summit, there is simply no bug here, so I will change the issue type until @ye-luo or someone else reports otherwise. We should make our python 2 version dependency clear and listen for other python issues.

Python 3 support and improving our handling of the python environment is definitely a worthwhile feature improvement. However there are other things that would have far higher return. e.g. Fixing the more important known tagged bugs that affect science ( e.g. #925 , #934 , #1054 ) or improving the testing situation.

@prckent prckent added enhancement and removed bug labels Dec 31, 2018
@ye-luo
Copy link
Contributor Author

ye-luo commented Dec 31, 2018

When I loaded gcc module, python 3 was also loaded. Then I switched to python 2 and got numpy missing.

@prckent
Copy link
Contributor

prckent commented Jan 1, 2019

Did you ask OLCF to fix this? We are far from being the only python2 user.

@prckent
Copy link
Contributor

prckent commented Jan 2, 2019

I have reported this problem to OLCF. The problem is bigger than qmca and related to python2 and numpy usage in general. A solution is required to get NEXUS to work (@jtkrogel ). The current python2 and py-numpy/1.11.2-py2 modules were built requiring gcc/4.8.5 and set to conflict with gcc new enough to support C++14. It should be an easy fix for the Center.

@ye-luo
Copy link
Contributor Author

ye-luo commented Jan 3, 2019

@prckent Thanks. Based on the reply from OLCF, python/2.7.15-anaconda2-5.3.0 is the current solution and it works for me.

@prckent
Copy link
Contributor

prckent commented Jan 3, 2019

Superseded by #1290 and #1293

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants