Becksteinlab / GromacsWrapper

GromacsWrapper wraps system calls to GROMACS tools into thin Python classes (GROMACS 4.6.5 - 2024 supported).
https://gromacswrapper.readthedocs.org
GNU General Public License v3.0
169 stars 53 forks source link

support Python 3 #44

Closed whitead closed 6 years ago

whitead commented 8 years ago

Are you planning on adding Python 3 support? I see some mention of 2to3 in the commits, not couldn't find a description anywhere else. Thanks!

dotsdl commented 8 years ago

I think we'd like to, but the library doesn't have regular development at the moment. @orbeckst can we get a rough list of what needs to get done to make GromacsWrapper work under Py3? Then we can get to work knocking these components out piecemeal.

orbeckst commented 8 years ago

Not sure what is needed at the moment; it;s probably not a big deal because there's no C/Cython code. Using six will probably do the job.

Perhaps run 2to3 and check if that's enough to get it to import, then use six to make it work under 2 and 3.

On 6 Apr, 2016, at 10:42, David Dotson wrote:

I think we'd like to, but the library doesn't have regular development at the moment. @orbeckst can we get a rough list of what needs to get done to make GromacsWrapper work under Py3? Then we can get to work knocking these components out piecemeal.

� You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub

Oliver Beckstein * orbeckst@gmx.net skype: orbeckst * orbeckst@gmail.com

orbeckst commented 8 years ago

I had a look and from browsing the 2to3 patches it seems that we can do pretty much everything with a six compatibility layer. It's a bit of boring work but doable.

dotsdl commented 7 years ago

I have good motivation to knock this one out with alchemlyb development. I'll make a python3 branch so I can get tests via travis easily.

orbeckst commented 7 years ago

@dotsdl the develop branch has been cleaned up (gromacs.analysis gone, numkit separate). If you want to have a go at Py 3 then please do! Note that numkit also needs to become Py3, see Becksteinlab/numkit#1.

orbeckst commented 7 years ago

@frchalaoux please open a pull request that includes your patches from #121.

If you haven't done this on GitHub yet:

  1. fork the project to your own GitHub account
  2. make a branch in your fork (e.g., issue44-py3)
  3. create a pull request from your repo against the GromacsWrapper develop branch

We'll then start reviewing and discussing the code. The whole review process will happen on your PR.

frchalaoux commented 7 years ago

@orbeckst I would like to ask you for advice to decide if my starting architecture is practitable ? :

And now how to sync "My Github GromacsWrapper repository" with "Your Github GromacsWrapper repository" in order to get the other changes from your repository ?

FR.

orbeckst commented 7 years ago

All sounds very sensible. Once you have your local repository, do the following:

cd GromacsWrapper
git remote add gw git@github.com:Becksteinlab/GromacsWrapper.git

(or use https://github.com/Becksteinlab/GromacsWrapper.git instead of git@github.com:Becksteinlab/GromacsWrapper.git if you prefer https.) This adds a remote repository gw (you can use any name that you like, just don't choose origin, which is what your fork is being called by default).

You can then pull changes with

git pull gw develop

which will try to merge these changes.

frchalaoux commented 7 years ago

@orbeckst Thanks a lot for your help, this seems to work according to my first test and confirm this useful article that goes in the direction of my questions: "https://help.github.com/articles/fork-a-repo/". ... Cheers, FRC.