Categories:
Python repositories migration
Migration of Python repositories from Python 3.9 to Python 3.13 version for PyUtils, Aura NLP, Aura Complex Logic Framework plugin packages and ATRIA repositories
Introduction
This document describes the migration process of Python repositories from Python 3.9 to Python 3.13 1 for PyUtils, Aura NLP, Aura Complex Logic Framework plugin packages, ATRIA and other productive Python repositories that has taken place in Prince 10.0.0 release.
This migration is required due to the end of life of Python 3.9, set in October 2025.
PyUtils migration
PyUtils contains multiple repositories that have been migrated to Python 3.13 version by Aura Global NLP Team.
The use of these libraries is the same as before the migration, but OBs constructors must test the use cases to ensure that everything is working correctly.
NLP packages migration
The Aura Global NLP team has migrated the Python repositories to Python 3.13 version and has generated the different NLP packages for the OBs.
Two branches will live together:
- release/7.0: Compatible branch with Python 3.9 version. If the deployed OB release is previous to Prince 10.0.0.
- release/8.0: Compatible branch with Python 3.13 version. After Prince 10.0.0 release delivery.
The release/8.0 branch will be launched together with Prince 10.0.0 delivery. However, release/7.0 will remain active until the OB deploys Prince in production environment and even after that, for any issue or hotfix required.
The repositories of NLP training has a JenkinsFile 2 that defines the pipeline in Jenkins for the continuous integration of the repositories. For release/7.0 branch, the JenkinsFile of Aura NLP repositories will be configured for working with Python 3.9 version in the pipelines defines in Jenkins, to allow OBs to continue creating NLP packages, until they deploy this new release.
When deploying Prince release and changing from release/7.0 to release/8.0, both branches must be synchronized to preserve all modifications made in the older one.
Constructors should not do any change, as no trainings with the QnA and LUIS stages should exist (these stages are deprecated and must have already been replaced by the OpenAIEmbeddings and CLU stages respectively).
With the NLP packages provided by Aura Global NLP team, the OB constructors must test and validate that all the use cases are working correctly.
QnA and LUIS recognizers deprecation
The QnA and LUIS recognizers are deprecated and have been replaced by the OpenAIEmbeddings and CLU recognizers respectively in all trainings.
NLP Resources
The repositories resources listed below, which are the ones in production environment, have been migrated:
- AP
- resources_pizza
- resources_ap-demo
- resources_cr
- ES
- resources_tiempo
- resources_real-academia-historia
- resources_core-dialogs
- resources_bingo
- resources_movistar-shop
- resources_movistar-gaming
- resources_es-nov
- resources_memory
- resources_leia
- resources_eset
- resources_chester
- resources_mis-tokens
- resources_movistar-cloud
- resources_estadio-infinito
- resources_es
- BR
- resources_br-b2c
- resources_br-b2b
- resources_br
- resources_br-rh
- resources_br-rcs
- resources_br-stb
- resources_br-easy
- resources_br-app
- resources_br-wa
- resources_br-nov
Migration process for CLF plugins
The Aura Global NLP team and constructors have carried out the following steps for the migration of CLF plugins:
- Aura Global NLP team:
- Updated in
requirements.txtthe packages to the versions generated for Prince release. - Updated tools and scripts to work with the Prince release.
- These repositories work the same way as the NLP training repositories: a release/7.0 branch has been launched before the Prince release to make changes in previous versions. For Prince release, a release/8.0 branch is available.
- Updated JenkinsFile:
- The JenkinsFile is set for versions previous to Prince release (release/7.0).
- In Prince release, there is no need to update JenkinsFile as it is already configured in master.
- Updated in
- Constructors:
- Reviewed the Python changelog for Python 3.13 version.
- Executed tests with the new version of Python and its libraries.
- Executed plugins and tested the locally.
- Adapted code.
- Generated a new version of the plugin package of the constructors and propagated to the corresponding environment.
- Tested plugins in the environments.
Currently, there are no constructors outside the global team. For this reason, the Aura Global NLP team will be responsible for the migration of the CLF Plugins.
CLF plugins repository list
Below, the list of migrated CLF plugins repositories is included:
- aura_clf_video
Migration process for ATRIA
The ATRIA repositories have been migrated to Python 3.13 by Aura Global Team.
The configuration inside ATRIA repositories must be the same as before migration, but constructors must test the use cases to ensure that everything is working correctly.
Information about the migration process for any productive repositories of Python language
Get sure that any productive repository that is not currently being used has been migrated from Python 3.9 to 3.13 version before being put into production.