ALTERYX INSPIRE | Join us this May for for a multi-day virtual analytics + data science experience like no other! Register Now
The Alteryx Community has implemented a new single sign-on experience. If you are having issues with your account, please review the FAQ's.

Alteryx Designer Knowledge Base

Definitive answers from Designer experts.

Have different Python Module versions for different workflows

MatthewP
Alteryx
Alteryx
Created
 How To: Have Different Python Module Versions For Different Workflows
The below steps will walk through how to have two different versions of PyPDF2 (can be any module) available to be used within different workflows.
 Prerequisites
  • Alteryx  Designer 
    • All 
  • Python Tool and Command Prompt
  • NOTE: JupyterTool_vEnv folder was renamed to DesignerBaseTools_vEnv in versions 2021.1.4 and higher
 Procedure
 
  1. Install the older module you want first. (See the below two community articles on how to install Modules)  
    1. https://community.alteryx.com/t5/Alteryx-Designer-Knowledge-Base/How-To-Use-Alteryx-installPackages-...
    2. https://community.alteryx.com/t5/Alteryx-Designer-Knowledge-Base/Install-Python-packages-via-command...
  2. Create a folder called "old_version" within one of the two below locations based on the installed version you have (these locations are assuming you installed with default C drive).
    1. C:\Users\USERNAME\AppData\Local\Alteryx\bin\Miniconda3\envs\JupyterTool_vEnv\Lib\site-packages  (For Non-admin version)
    2. C:\Program Files\Alteryx\bin\Miniconda3\envs\JupyterTool_vEnv\Lib\site-packages (Admin or Server version)
  3. Cut/Move the version of the Module that you installed (see below screenshot for an example).python1.PNG
  4. Install the newer version of the same module (see below screenshot of an example)python2.PNG
  5.  Test the import of the Module either with a command prompt (see first screenshot) or within Designer. To make sure that the versions are different note how the below examples are importing them.
    1. For the older version you have to use "from old_version import PyPDF2"
    2. For the new version you use the normal "import PyPDF2"
Command Example: You can see the version differences 
image.png

Designer Example:
Python4.PNG
 
Comments
colgan
ACE Emeritus
ACE Emeritus

Thanks for this writeup!  Images are only showing icons, would love to see those screenshots

LisaL
Alteryx
Alteryx

@colgan I can see the screenshots with Chrome Version 88, but not with Firefox Version 85, nor with Edge Version 88.  I'll mention this to the Community folks to see whether this is a trend.

colgan
ACE Emeritus
ACE Emeritus

Interesting.  I'm using Chrome 88 too.  This and this is what I see on the page.  Can't click on it either.

Colgan_1-1614388849246.png

 

Colgan_0-1614388791217.png

 

SeanAdams
17 - Castor
17 - Castor

Hey @MatthewP - thank you for writing this up.

 

Do you know how to set this up so that it runs on the server env - we have some situations where Alteryx canvasses need to run using different versions of Python modules on the server?

MatthewP
Alteryx
Alteryx

Hello @SeanAdams,

 

I am not sure if you have received an further answers on this but you should be able to roll this out for Server just like it is in the original post. The only trick to that is that your Server Admins will just have to make sure those different versions are separate and that the workflows that need to call the older version of the module are uploaded with the correct import statements (this is on the user to do). For those users I would suggest that they replicate that folder structure locally that way they can test their workflows locally with the correct import statements before publishing to Gallery so they don't need to make any changes.

 

Please feel free to reach out to me if you have any further questions!