GTCtoVCF icon indicating copy to clipboard operation
GTCtoVCF copied to clipboard

Python3 support

Open Stikus opened this issue 4 years ago • 1 comments

Hello. In issue #65 @jjzieve said that GTCtoVCF should work on python3, but last commit on master says:

GTCtoVCF is currently only known to work with python2.7

I can confirm that GTCtoVCF working on Python3 (just tested) and even working with last numpy (1.21.4) and pysam (0.17.0). Only problem is PyVCF and its use_2to3, removed in setuptools 58, that's why I have to use pip install setuptools<58.

If you plan to support the tool further, I suggest finding a replacement for pyvcf - other people looking (like here).

Here is part of my Dockerfile (we're using Python 3.7.5):

RUN pip install --no-cache-dir 'setuptools<58'
RUN pip install --no-cache-dir numpy pyvcf pysam


ENV GTCTOVCF_VERSION="1.2.1"
RUN cd "$SOFT" \
    && wget -q "https://github.com/Illumina/GTCtoVCF/archive/refs/tags/${GTCTOVCF_VERSION}.tar.gz" -O "$SOFT/GTCtoVCF-${GTCTOVCF_VERSION}.tar.gz" \
    && tar -xzf "$SOFT/GTCtoVCF-${GTCTOVCF_VERSION}.tar.gz" \
    && rm "$SOFT/GTCtoVCF-${GTCTOVCF_VERSION}.tar.gz"
ENV GTCTOVCF="$SOFT/GTCtoVCF-${GTCTOVCF_VERSION}/gtc_to_vcf.py"

Stikus avatar Nov 09 '21 14:11 Stikus

Thanks for the info. Several users had issues with python3, perhaps this was the underlying cause. We updated the README more explicitly to spell out python2.7 because that's what its most tested with. We understand python2.7 is EOL though. I'd be happy to review a PR if you wanted to add a requirements.txt or the dockerfile you showed so this tool can more explicitly support python3.

jjzieve avatar Nov 09 '21 16:11 jjzieve