Hi, all
  https://pythonclock.org/ say Python 2.7 will not be maintained past 2020. One 
BZ https://bugzilla.tianocore.org/show_bug.cgi?id=55 also requests this 
migration. And, Python37 does good performance optimization. In EDK2 build, 
Python37 can improve 20% performance than Python27 in Build AutoGen phase. So, 
we plan to add Python3 support in BaseTools. In previous discussion, the 
feedback is not to drop Python2 support in short term, and keep Python2 and 
Python3 coexist.

My proposal is to add two copy BaseTools Python code in BaseTools/Source 
directory. One is current BaseTools/Source/Python, another is new 
BaseTools/Source/Python3. edksetup.bat/edksetup.sh base on environment variable 
(PYTHON3_HOME) to know whether Python3 is used. If PYTHON3_HOME is not set, 
Python2 is still used as current way. If user wants to enable Python3, he needs 
to set PYTHON3_HOME. After 201811 release tag, BaseTools Python2 source code is 
kept as the stable release. Python3 is as the active trunk. By default, any 
change will be for Python3. If the submitter also request the change for 
Python2, he needs to list it in BZ description. If the submitter has the clear 
request, Python2 can add new feature or enhancement.

  If you have any comments or suggestion on Python3 migration, please join this 
discussion.

Thanks
Liming

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to