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

support Python 3 #84

Closed
3 tasks done
orbeckst opened this issue Mar 10, 2017 · 4 comments · Fixed by #166 or #170
Closed
3 tasks done

support Python 3 #84

orbeckst opened this issue Mar 10, 2017 · 4 comments · Fixed by #166 or #170
Assignees
Labels
Milestone

Comments

@orbeckst
Copy link
Member

orbeckst commented Mar 10, 2017

Support Python 2.7 and Python 3.6+

  • use from __future__ import print_function, ...
  • use six where necessary
  • add Python 3 tests to test matrix
@orbeckst
Copy link
Member Author

Unless someone wants to put the effort into porting with six we will just keep it Python 2.7 and a stable set of dependencies.

@orbeckst orbeckst removed this from the 1.0 milestone Jan 23, 2021
@orbeckst orbeckst removed the wontfix label Jun 7, 2021
@orbeckst
Copy link
Member Author

orbeckst commented Jun 7, 2021

@ALescoulie if you want to take the py3 upgrade on — please do!!!!

@orbeckst orbeckst added this to the 1.0 milestone Jul 21, 2021
@VOD555
Copy link
Contributor

VOD555 commented Jul 23, 2021

We need to replace optparse with 'argparse' in the scripts.
mdpow-solvationenergy, mdpow-pow and mdpow-pcw have been changed to use argparse in #150 .
We still need to do the same things in the others.

@orbeckst orbeckst linked a pull request Jul 24, 2021 that will close this issue
@orbeckst orbeckst linked a pull request Jul 30, 2021 that will close this issue
@orbeckst
Copy link
Member Author

Accidentally closed with a premature merge.

@orbeckst orbeckst reopened this Jul 30, 2021
orbeckst pushed a commit that referenced this issue Jul 30, 2021
* close #84 
* support Python 3.6 – 3.9 (in addition to Python 2.7)
* use six and other compatibility hacks
   - replaced outdated merge_dicts function in config.py with recursive method that works in python 2 
   - added `__deepcopy__` method in fep.py with method that works in python 3.
   - use `__future__` imports
   - use logger.warning() everywhere
* Updated tests 
   - avoid reading errors when opening pickle file generated in Python 2
   - replaced outdated yield tests
   - fixed tempdir imports (replace with pytest fixtures later)
* updated mdpow scripts Python3 compatibility (untested, see #172 )
* Updated ci workflow to test supported Python versions
* updated AUTHORS
* updated CHANGES
    
Co-authored-by: Oliver Beckstein <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants