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

Python 3 support #33

Closed
holtgrewe opened this issue Aug 31, 2016 · 8 comments
Closed

Python 3 support #33

holtgrewe opened this issue Aug 31, 2016 · 8 comments

Comments

@holtgrewe
Copy link
Contributor

Would you consider a patch adding Python 3 support to OptiType? This would greatly simplify our lives at the place I work as this would make OptiType integrate better with the rest of our stack.

@b-schubert
Copy link
Contributor

You can finde the 2to3 modified files in the following branch:

https://github.com/FRED-2/OptiType/tree/feature/2to3

Could you please tell me if that already suffices?

@holtgrewe
Copy link
Contributor Author

Hi @b-schubert I think 2to3 makes an upgrade from Python v2 to v3 but does not allow both versions. I created PR #34 using future and six which gives support for both versions. Also, I found a problem in the case that pysam does not work properly (as is the case with Bioconda on my system).

By the way, what about (1) adding a tag/release here on Github and (2) making OptiType installable with a setup.py?

@b-schubert
Copy link
Contributor

b-schubert commented Aug 31, 2016

Great we'll have a look at it.

To your other questions:

(1) Definitely agree and will be done.
(2) We discussed this previous and believe that it should not be possible to "install" OptiType via pip/setup.py since:

  • It is not a Python module as such
  • For an inexperienced user this might connote that a simple pip install optitype is enough, which it isn't
  • The installation would be incomplete and would still need a user to configure and install the python independent requirements

We instead provide a Dockerfile/image as of now which takes care of the installation.

@andras86
Copy link
Contributor

The original release is now tagged v1.0 and the current state v1.1.

@holtgrewe
Copy link
Contributor Author

Hm, but pip is the way to install Python applications as well, e.g., Snakemake, etc.

I'll rebase my changes on top of yours

@b-schubert
Copy link
Contributor

This might be the case for pure python applications or easily configurable projects that provide all contribs. But OptiType is unfortunately neither of those to applications. Even your PR #9 wouldn't work because table would fail due to the lack of HDF-5 libs.

And in my opinion, a pip-able application which still requires that all dependencies are prior installed and in the correct order, does not add any benefit and makes it much more problematic for people to figure out what went wrong during installation.

@holtgrewe
Copy link
Contributor Author

OK, agreed. However, a setup.py nicely describes the requirements of a program and allows for a clone-and python setup.py installation into a $prefix/bin directory. This is the more similar to the usual way of installing software, e.g., using make install instead of copying the software to some directory and then stripping the test directory.

@b-schubert
Copy link
Contributor

resolved in PR #36

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

No branches or pull requests

3 participants