We can’t move to Python 3 until we can move OH itself off of Java 8 and gain access to Graal VM (or the Jython folks decide to actually put in some effort to build and release a Python 3 variant, OH is wholly dependent on up stream libraries to provide support for stuff like this).
As far as Rules are concerned, the difference between Python 2.7 and 3 are almost non-existent. So waiting for Python 3 support isn’t really doing anything for you. The Rules will look the same either way.
Just because the Python folks will stop supporting 2.7 next year doesn’t mean that all of a sudden all Python 2 programs in the world will stop working. It just means there will be no more changes to the language, either to add new feature or to fix bugs.
Even if OH takes a long time to get support for Python 3 you are not running any major risks by adopting Jython’s 2.7 now.
- You will have limited to no changes needed to your code to move to Python 3.
- In the Rules development context, there is little or nothing that Python 3 offers that you will miss having to build your Rules.
- Python 2.7 programs will continue to work for many years to come, they won’t automatically stop working when the foundation ends support.
Definitely make the move when you have the time but don’t let the fact that Jython only supports 2.7 keep you from making the move when you are ready.
When you are ready, see
These should give you the docs and enough examples to get started.