devbisme / KiPart

Python package for generating multi-unit schematic symbols for KiCad from a CSV file.
MIT License
174 stars 46 forks source link

Made dependency on future python 2 only #81

Open zeldin opened 4 months ago

zeldin commented 4 months ago

KiPart has a dependency on the "future" module. Going through the code I found that the only use of this module is two instances of calling future.standard_library.install_aliases(). This function is defined as doing nothing at all on python 3. Thus, the call is only needed on python 2 and it's simple to make it so that it is only called on python 2, making the dependency not needed on python 3.

Why is this important? Well, with python 2 having become EOL, distributions are starting to remove python 2, and also the future module (see e.g. https://bugs.gentoo.org/888271). Thus, requiring the module in order to install for python 3 makes packaging difficult (or at least awkward).

Note that uses of __future__ (with the underscores) are not affected by this at all, since that is a builtin "module" and guaranteed to be available in every Python installation.