Last October we announced that we are preparing for a transition from Python 2.7 as it reaches end of life in January, 2020. Splunk plans to bundle Python 3.7 in a future release of Splunk Enterprise. If you’re an admin, an app developer using Python, or even a user of Splunk IT Service Intelligence (ITSI) or the Machine Learning Toolkit (MLTK), this will likely affect you and we want you to be informed and prepared.
Splunk Enterprise will ship with both Python 2.7 and 3.7 in a future release. All custom scripts will default to using Python 2.7 runtime, but Splunk Web will use Python 3.7 runtime. Customers and developers will be able to port their custom scripts to Python 3.7 compatibility on a script-by-script basis.
We might remove Python 2.7 runtime altogether in a future release. We will be removing some previously-deprecated features from the code that have a major Python intersect, the most significant being Advanced XML. If you use Advanced XML in your Splunk Enterprise deployment, you will need to replace it with Simple XML before upgrading Splunk Enterprise to the Python 3-compatible version. For more information about what features are deprecated and removed, see deprecated and removed features in the Splunk Enterprise Release Notes.
Splunk will release a Python Migration Readiness app that will scan apps in your instance and identify to-be-removed features, as well as scripted features that use Python.
Admins please reach out to your account representative if you'd like to get access to a beta release of Splunk Enterprise with support for Python 3.7. App developers who do not have an account rep may request beta access by sending email to email@example.com for testing their app.
For App Developers
Grab the latest Splunk AppInspect release to evaluate your app for deprecated features that will be removed due to the Python migration. In addition, you can use the latest Python SDK v1.6.5 or later, which is cross-compatible with Python 2 and Python 3 through the use of the futurizing library Six.
All Splunkbase apps that will be compatible with the version of Splunk Enterprise that ships with both Python 2.7 and 3.7 must have updated Python scripts that are compatible with Python 2 and 3 runtime.
App developers may request access to a beta version of Splunk Enterprise with Python 3 support by sending email to firstname.lastname@example.org.
Take a look at the latest available information over in Splunk Documentation where you can find more details on all of the impacts of the move to Python 3.7.
We plan to make updates to the online documentation and provide further updates in future blog posts and social media.
Note: This information is subject to change at any time, at the sole discretion of Splunk Inc. and without notice. This roadmap information shall not be incorporated into any contract or other commitment. Splunk undertakes no obligation to either develop or deliver any product, features, or functionality described here.