sde1000 / python-dali

Library for controlling DALI lighting systems
Other
150 stars 73 forks source link

Retaining support for python 3.5 #73

Closed sde1000 closed 4 years ago

sde1000 commented 4 years ago

Leaving this question here because the issue has just come up in the pull request for command sequences:

Is anyone still using this library on python-3.5?

f-strings were introduced in python-3.6 and I'm so used to them now it seems odd to have to work around their absence!

Is it now reasonable to drop support for python-3.5?

sde1000 commented 4 years ago

I notice that f-strings are already in use in the drivers package and nobody has complained...

hasseb commented 4 years ago

It should be mentioned somewhere, which version of Python is required. Also other dependencies would be nice to have listed somewhere. In my fork I have rather extensive install instructions. When I first tried sde1000/python-dali it was not very easy to get it work. At least on that time the default Python3 version installed did not support f-strings. It is not very easy to find out whats wrong if you don't know Python and f-strings.

rnixx commented 4 years ago

Generally I am not a big fan of "cutting edge" features. I was not aware about the use of f strings in python-dali, otherwise I probably complained. My production setup still uses an older version of python-dali. As rule of thumb I'd prefer backward compatibility as long as reasonable.

dgomes commented 4 years ago

I use a simple rule of thumb:

What does Debian stable use ? That's the version I support

Debian stable is by definition old...

sde1000 commented 4 years ago

Current Debian stable is "buster" which uses Python 3.7.

Other older distributions: Ubuntu 18.04 (supported until April 2023) uses Python 3.6. Ubuntu 16.04 (supported until April 2021) uses Python 3.5.

I agree with @hasseb that the versions of Python supported should be documented (probably in the README, it's the most obvious place).

So: is anyone still actually using Python 3.5 with python-dali?

rnixx commented 4 years ago

Debian stable is by definition old

Sure, but in terms of embedded system still brandnew :)

However, I'd support 3.5+ until there's a real reason not to do any more.

sde1000 commented 4 years ago

The main reasons to drop support for 3.5 from my point of view:

Even if we decide to retain support for 3.5 for now, I want to have a schedule for removing it. Significant dates coming up:

sde1000 commented 4 years ago

Nobody has come out and said that they need to use future releases of python-dali with Python 3.5, so I plan to document that it is no longer supported, and remove it from the CI configuration.