marbl / parsnp

Parsnp was designed to align the core genome of hundreds to thousands of bacterial genomes within a few minutes to few hours. Input can be both draft assemblies and finished genomes, and output includes variant (SNP) calls, core genome phylogeny and multi-alignments. Parsnp leverages contextual information provided by multi-alignments surrounding SNP sites for filtration/cleaning, in addition to existing tools for recombination detection/filtration and phylogenetic reconstruction.
Other
126 stars 25 forks source link

Please port to Python3 #63

Closed tillea closed 4 years ago

tillea commented 5 years ago

Hello, the Debian Med team is maintaining parsnp for official Debian. The recently released Debian 10 was the last Debian release featuring Python2 since this programming language is EOL. If you are interested that we continue to maintain parsnp in official Debian (and that users of other modern distributions will have no problems to install parsnp on their systems) I'd recommend you port your code to Python3. The 2to3 tool might be of great help here. Kind regards, Andreas.

tillea commented 4 years ago

I have createt a patch for the Python3 migration you might like to verify. It would be extremely helpful if you could provide a test script or at least a documentation how to process the provided example data and to compare these with some expected output. We could use this as Continuous Integration test to make sure the conversion was successful. Kind regards, Andreas.

tseemann commented 4 years ago

@tillea can you make a PR for this repo instead?

advaitb commented 4 years ago

Ported to python 3, Thanks @tillea!

tillea commented 4 years ago

Great! Could you please tag a release?

tseemann commented 4 years ago

https://github.com/marbl/parsnp/releases wow - has it really been 4.5 years? time flies!

advaitb commented 4 years ago

@tillea we will have a (mini) release soon with minor bug fixes.

tseemann commented 4 years ago

You don't have to make an actual release. A tag is enough. it won't "stand out" like a release.

git tag v1.2.1
git push --tags
tillea commented 4 years ago

Hi, On Wed, Nov 13, 2019 at 09:00:11PM +0000, Torsten Seemann wrote:

git tag v1.2.1 Thanks a lot, that worked. I noticed that you did not took over the chunk of our patch replacing

seq_len.iteritems()

which is not available in Python3 any more. So I kept the tiny patch

https://salsa.debian.org/med-team/parsnp/blob/master/debian/patches/2to3_new.patch

for the Debian package (may be you can drop the enclosing iter() - that's what 2to3 created but it looks somehow superfluous).

BTW, it would be great to have some kind of test suite for parsnp.

Kind regards, Andreas.