Alteryx Embedded Python

Version:
2021.3
Last modified: August 11, 2021

Overview

The Alteryx platform contains an embedded version of Python to support multiple functions in the products. The version in Alteryx doesn't affect other versions that you might have installed on your machine. From time to time Alteryx needs to upgrade that version of Python. You might see that version update reflected in the Jupyter Python tool and other tools that use the Alteryx Python SDK. Python-based data connectors include Salesforce, Google BigQuery, Microsoft Azure Data Lake Store, Microsoft Power BI, Microsoft OneDrive, and Microsoft Dynamics CRM.

Alteryx Python Compatibility

Alteryx Release Embedded Python Version Virtual Environment
Before 2019.3  3.6.0 Standard 
2019.3–2020.3 3.6.8 Conda
2020.4 and Newer 3.8.5 Conda

Python SDK Tool Upgrade Frequently Asked Questions 

What happens to custom tools that were built on previous versions of Designer/Python and how do I know which tools are impacted? 

  • If you have installed YXI custom tools in a previous version of Designer, that tool no longer functions properly due to incompatible Python version references within the tool module dependencies. 

  • It is also possible that the tool has Python module dependencies that are no longer compatible, or use aspects of the Python language that are no longer supported, with the new Python version.  

  • Upgrade script:

    We have provided an Embedded Python Upgrade Script so you can see a list of tools that might be impacted on your machine or server. This script can be used by Alteryx users as well as Server admins who are considering upgrading to 2020.4 (and future versions), or who have already upgraded and need assistance troubleshooting workflows containing Python SDK based tools. 

How does this affect my custom tools? 

  • If you have previously installed YXI custom tools and upgraded to Designer 20.4, an error message alerts you to the issue, and you can't run a workflow that contains that tool.  

  • This affects workflows on all Alteryx products.  

How does this affect Python-based data connectors, such as Salesforce?

  • Please take an inventory of all the tools and versions you have. There are two file paths to find this information, depending on your installation. 
    • For elevated installations (running as an administrator), navigate to Program Data (hidden) > Alteryx > Tools
    • For non-elevated installations, navigate to Users > [User] > App Data (hidden) > Roaming > Alteryx > Tools
  • There are six Python-based data connectors: Salesforce, Google BigQuery, Microsoft Azure Data Lake Store, Microsoft Power BI, Microsoft OneDrive, and Microsoft Dynamics CRM. This ensures that you keep track of which version you will need to re-install. While all data connectors may not fail, we highly recommend that you re-install every version of every connector that has active workflows. 

How can I fix a tool so that the workflow runs? 

  •  If a tool doesn't require any update to be compatible with Python 3.8, take note of the specific tool version and location. Make sure you can locate the YXI package for the tool prior to deleting the tool since this process requires re-installing the tool package. Then, we recommend that you delete the tool directory and its files, then reinstall the YXI for the tool. Before reinstalling the YXI, do not open any workflows that use the tool because it could cause unknown behavior in the workflow.
  • Some tools might continue to work without taking this step, but we strongly recommend that you follow the instructions we've provided here.
  • You have to follow those instructions for each tool on each machine, for each install directory. If you use non-admin and admin installations, make sure you have updated all possible locations where the tool exists.  

  • If a tool requires any updates to resolve usage differences, dependency issues, or packages with new WHL files, you need to receive a new tool from the tool developer. In most cases, that is a partner-built tool, but could also be an older tool built by Alteryx or even a tool found on Community or Gallery.

Are the Python-SDK based tools that ship with the product affected by this upgrade?

  • No, we upgraded these tools as part of the Python upgrade effort. They should work automatically.

Are there any changes to tools that use Python but are not built on the Python SDK? 

  • You shouldn't notice any changes in either the Python tool or the Insights tool, which each use Python but not the Python SDK. But because underlying packages are being updated, like pandas, there might be some cases where the code is no longer compatible with the Python version.  
  • You might see an issue with your Python code in the Python tool if it uses functionality that is no longer supported. If that is the case, you need to update the code to be compatible with Python 3.8. There might have been changes between 3.7 and 3.8. Both are linked here: 

What happens if the Designer and Server versions of Alteryx are different? 

  • You shouldn't encounter an error if (1) you have uploaded a workflow with a Python SDK-based tool from 20.3 to a Server that has been upgraded to 20.4, (2) the underlying code is the same, and (3) you have fixed your Python-based tool workflow by re-installing the same YXI file on the Server. Every Python-based tool that has active workflows should be re-installed on the Server.  

  • The workflow references a tool name and tool version, not the Python version. 

  • If the tool has been repackaged and a new version created to support 20.4, there will be version incompatibilities between tools, and the tool would need to be updated in Server or Designer. 

How does the upgrade impact Alteryx Analytics Hub? 

  • We have also upgraded the embedded Python version in Alteryx Analytics Hub to 3.8.5. Like with Server, the version can be different between Designer and the Alteryx Analytics Hub. You need to reinstall the YXI if you were using one that has incompatible dependency versions.

  • If a user licensed both Alteryx Analytics Hub and Alteryx Intelligence Suite, they have to Install Alteryx Analytics Hub to upgrade from the 20.2 stable release, then install Alteryx Intelligence Suite using the 20.4 download, which is available next to AAH on downloads.alteryx.com. After that, reinstall the YXIs.   

If I wait until 21.1 or later to upgrade, will I still have issues with the upgrade? 

  • Yes. The Python version will be incompatible 20.3 and older versions, and 20.4 and beyond. Regardless of when you upgrade, you need to update YXI tools to be compatible.  

If I install 20.4, make no updates to my Python tools, and change my mind, can I uninstall, reinstall 2020.3, and be back to ‘normal’? 

  • Yes. If you do not reinstall any Python tools, you should be able to revert to a prior state with no issues. After you update Python tools, you must continue that process to switch versions. For example, if you were to upgrade from 20.3 to 20.4 and reinstall Salesforce, but then go back to 20.3, you would need to reinstall Salesforce again.   

Will I still be able to have multiple installations of Alteryx on one machine with varying versions? 

  • No, not if you use Python SDK-based tools. If you do not, most likely you won't have any issue having multiple versions installed.  
  • You can continue to use a non-admin and admin installations of the same Alteryx version. 

What happens if I have multiple versions of  Alteryx on one machine while using Python SDK based tools? 

What should I do if I am still having issues? 

Python Tool Developer FAQs

What do tool creators and partners need to do to make sure tools work? 

  • We recommend that partners and tool creators upgrade their local installations and test all tools they have created. They might use modules with versions that are no longer compatible with Python 3.8 or syntax that is no longer supported.  

What if the tool consists of WHL fields to support offline installers? 

  • If your tool uses WHL files, you need to repackage the tool with its WHL files in a Python 3.8 environment and republish the tool for users to access.  

What about ayx-plugin-sdk custom tools? 

  • If a tool creator uses the Beta release ayx-plugin-sdk that has been updated for 20.4, they need to update this package to the latest version for it to continue to work.

What if I use Snakeplane in my tools? 

Multiple modules were updated in Snakeplane to support Python 3.8.5, including numpy and pandas. In some cases, you may need to update Snakeplane in order for your tools to work.

Was This Page Helpful?

Running into problems or issues with your Alteryx product? Visit the Alteryx Community or contact support. Can't submit this form? Email us.