I was wondering if the python tools I developed for ArcGIS Pro v. 2.x will be backward compatible with ArcGIS Pro 3.0? I know that maps and add-in for ArcGIS Pro v3.0 is not backward compatible, but only forward compatible. Does that apply for everything, including python tools and python toolboxes as well? Thanks!
I have been maintaining a good old "ArcMap" style *.tbx toolbox + python scripts compatible with ArcMap, ArcGIS Pro 1.x, 2.x, 3x for the past five years since Pro 1.x came out.
I adapted the toolbox to be compatible with Python 2.x and 3.x, and thus ArcMap and ArcGIS Pro, according to the instructions ESRI provided in the Pro Help, and using e.g. the
from __future__ import
Python 2.x/3.x compatibility functions.
Overall, I've found this pretty well manageable, especially using the ArcPy
arcpy.GetInstallInfo()
function to get product name and version, so as to be able to distinguish it in code and adapt code flow depending on the capabilities of a version of a product.
So if you're reasonably well versed in python and arcpy, I wouldn't worry to much about it.
And regarding the specific upgrade from Pro 2.x to 3.x: this was essentially without any issues. Tools just run, at least for my code base. The previous 1.x to 2.x upgrade did represent issues.
stuff developed in Pro 3.x can be saved to prior versions
Save Toolbox To Version (Data Management)—ArcGIS Pro | Documentation
the differences in python 3.9 back to 3.7 shouldn't cause any issues
but there are tools for check back
Analyze Toolbox For Version (Data Management)—ArcGIS Pro | Documentation