jeetsukumaran / DendroPy

A Python library for phylogenetic scripting, simulation, data processing and manipulation.
https://pypi.org/project/DendroPy/.
BSD 3-Clause "New" or "Revised" License
205 stars 63 forks source link

Keep supporting Python2.7? #159

Closed mmore500 closed 3 months ago

mmore500 commented 1 year ago

Looks like there is one line of code that uses fstring syntax, which is a Python3.6+ only feature.

https://github.com/jeetsukumaran/DendroPy/blob/ad33b71b8c8044139434c584add580864e97b6d5/src/dendropy/model/coalescent.py#L731

Not sure what the fraction of Python2 looks like among the user base. Because it's just one line, I'll push a patch for Python2-friendly syntax on a branch I'm working on. For now, infrastructure to install Python2.7 for testing isn't too hard to manage, so that's not a strong factor to suggest dropping Python2.7 support either. Figured I'd open this issue to check in on the thinking/plan on this front for the future.

jeetsukumaran commented 1 year ago

That f-string usage was probably a bit careless of me. At the same time, I'm personally happy dropping support for 2.7 going forward. I think maintaining a 2.x compatible branch may lead to lots of headaches, my personal preference is to just go 3.x and not look back?

mmore500 commented 1 year ago

I think that would make a lot of sense. Especially because Python2 has been EOL'ed for 3 years now and users will still be able to access previous versions (just not track new features).

Because the current codebase does have python2 support it might make sense to do one more release and then drop python support promises from the documentation and package manifest?

mmore500 commented 3 months ago

Python2.7 support will be dropped in Dendropy 5.