pytries / marisa-trie

Static memory-efficient Trie-like structures for Python based on marisa-trie C++ library.
https://marisa-trie.readthedocs.io/en/latest/
MIT License
1.03k stars 91 forks source link

Drop support for EOL Python 2.6 #45

Closed hugovk closed 6 years ago

hugovk commented 6 years ago

Fixes #44.

superbobry commented 6 years ago

I have mixed feelings about this. If Appveyor does not support 2.6 any longer, we can just drop the corresponding lines in appveyor.yml, but why drop it completely from the list of supported versions? The EOL status does not automatically migrate all existing Python installations, so I don't quite see the urgency.

hugovk commented 6 years ago

It's not really worth the effort.

Python 2.6 has been EOL for four years and no longer receives security updates. Many other important Python libraries are also dropping it, and it's little used.

image

https://en.wikipedia.org/wiki/CPython#Version_history

Here's the pip installs for marisa-trie from PyPI for the last month (via pypinfo --percent --pip marisa-trie pyversion), showing virtually no usage.

python_version percent download_count
2.7 59.3% 3,048
3.5 20.9% 1,074
3.6 14.3% 734
3.4 5.4% 279
2.6 0.1% 4

This shows there's very little demand for maintaining 2.6. Anyone stuck on 2.6 can pin to the last version that did. They will be doing this already for other libraries.

You will be able to use modern features of 2.7+.

There's an argument to be made that maintaining support for 2.6 is bad for the community as a whole, see https://snarky.ca/stop-using-python-2-6/ and https://www.curiousefficiency.org/posts/2015/04/stop-supporting-python26.html

superbobry commented 6 years ago

Thanks for the extended explanation. The pypinfo part looks very convincing.