Sodium Python 3 Support - We Need Your Help!

It should come as no surprise at this point that we’re sunsetting Python 2 support in the Sodium release. While we’re not immediately removing all of the Python 2 code, we no longer require Python 2 support to merge a product release (PR). Salt doesn’t change simply for the sake of change. Rather, we’re making this change because most of Salt’s dependencies have dropped Python 2 support and because Python 2 has reached its end of life.

We have recently been requiring tests to merge PRs and hosting Test Clinics to help learn how to write better tests–all in the name of improving the overall stability of Salt. We’ve been aware for some time that we need much more test coverage, but improving test coverage takes time and Salt is a very large project. Recently it’s come to light that our Python 3 support in certain modules does not have test coverage, and issues have not been otherwise uncovered or reported.

While improving the test coverage will take time, you can do something to help today. We’ve produced a Release Candidate (RC) for Salt 3001 (Sodium). Please download and install this RC in your lab environment with Python 3 and verify that your states will work.

If you encounter issues, please search to see if someone else has your same problem. If not, file a new bug report. If we don’t know a bug is there, we can’t fix it. But once we’re aware of the problem, we can start creating a solution–specifically a solution that includes automated tests.

The Open Core team takes these issues seriously and are planning a bug fix release (3001.1) targeted for mid July. We will be fixing as many of these issues as we can, especially if they’re Critical or High Priority.

Please help us by testing the Salt 3001 (Sodium) RC today!