From: "Bob Feng" <bob.c.feng@intel.com>
To: gaoliming <gaoliming@byosoft.com.cn>,devel@edk2.groups.io
Subject: Re: [edk2-devel] 回复: [edk2-devel] [Patch 0/2] Convert Split tool to python
Date: Wed, 13 Jan 2021 18:46:18 -0800 [thread overview]
Message-ID: <15493.1610592378547060035@groups.io> (raw)
In-Reply-To: <010101d6ea0f$ad1a0160$074e0420$@byosoft.com.cn>
[-- Attachment #1: Type: text/plain, Size: 4121 bytes --]
Good questions. I answer them inline.
Thanks,
Bob
On Thu, Jan 14, 2021 at 08:53 AM, gaoliming wrote:
>
> Bob:
> Have you plan to convert all C tools to Python tools? Or only some ones?
I am still investigating the feasibility of converting the C tools to Python tools. Some C tools are simple but some are complex. I hope all the C tools can be converted to Python tools so that all the tools can be moved to the BaseTools separate repo. I think we can file some BZs to track the progress of the C tools conversion. And I hope there could be more volunteers to be involved in this work.
Here are the discussions about the benefit and process of moving BaseTools out of the edk2 repo for reference.
https://edk2.groups.io/g/devel/topic/76572200#64993
https://edk2.groups.io/g/rfc/topic/74009714#270
https://edk2.groups.io/g/devel/topic/73069134#58048
>
> Can you share your planning for the changes in BaseTools?
Except for this patch, my current work for Basetools are:
1. Re-write the FMMT/FCE with Python and propose to add these 2 tools to the edk2 BaseTools.
2. Prepare to publish the Basetools incremental build regression test cases and test framework.
>
> And, I see you also add unittest for new split tool. Can you introduce the
>
> unittest framework for python tool? If so, new added tool can follow the
> same way to add unittest.
The unittest is the python build-in library for the unit test. https://docs.python.org/3/library/unittest.html
I provide the unit test is to help you to review this patch. From the unit test case, it will be easy to
see if this tool's behavior is as expected.
I think for the python code development, we can try our best to follow this document. https://edk2-docs.gitbook.io/edk-ii-python-development-process-specification/
>
>
> Thanks
> Liming
>
>> -----邮件原件-----
>> 发件人: bounce+27952+70232+4905953+8761045@groups.io
>> <bounce+27952+70232+4905953+8761045@groups.io> 代表 Bob Feng
>> 发送时间: 2021年1月13日 17:56
>> 收件人: devel@edk2.groups.io
>> 主题: [edk2-devel] [Patch 0/2] Convert Split tool to python
>>
>> There are 2 reasons to convert Split tool from C to Python.
>>
>> 1. We are in the process of moving the Basetools Python code
>>
>> to a separate repository. But there still are many C tools under
>>
>> edk2/BaseTools. To make all Basetools be in the separate repo,
>>
>> we can convert the C tools to Python tools.
>>
>> 2. The original Split tool is very slow. This python tool can reduce
>>
>> 90% time
>>
>> Bob Feng (2):
>> BaseTools: Convert Split tool to python
>> BaseTools: Add unittest for Split tool
>>
>> BaseTools/Source/C/Split/Split.c | 466 --------------------
>> BaseTools/BinWrappers/PosixLike/Split | 31 +-
>> BaseTools/BinWrappers/WindowsLike/Split.bat | 3 +
>> BaseTools/Source/C/GNUmakefile | 1 -
>> BaseTools/Source/C/Makefile | 1 -
>> BaseTools/Source/C/Split/GNUmakefile | 17 -
>> BaseTools/Source/C/Split/Makefile | 16 -
>> BaseTools/Source/Python/Split/Split.py | 203 +++++++++
>> BaseTools/Source/Python/Split/__init__.py | 10 +
>> BaseTools/Source/Python/tests/test_split.py | 101 +++++
>> 10 files changed, 325 insertions(+), 524 deletions(-)
>> delete mode 100644 BaseTools/Source/C/Split/Split.c
>> create mode 100644 BaseTools/BinWrappers/WindowsLike/Split.bat
>> delete mode 100644 BaseTools/Source/C/Split/GNUmakefile
>> delete mode 100644 BaseTools/Source/C/Split/Makefile
>> create mode 100644 BaseTools/Source/Python/Split/Split.py
>> create mode 100644 BaseTools/Source/Python/Split/__init__.py
>> create mode 100644 BaseTools/Source/Python/tests/test_split.py
>>
>> --
>> 2.29.1.windows.1
>>
>>
>>
>> -=-=-=-=-=-=
>> Groups.io Links: You receive all messages sent to this group.
>> View/Reply Online (#70232): https://edk2.groups.io/g/devel/message/70232
>> Mute This Topic: https://groups.io/mt/79647273/4905953
>> Group Owner: devel+owner@edk2.groups.io
>> Unsubscribe: https://edk2.groups.io/g/devel/unsub
>> [gaoliming@byosoft.com.cn]
>> -=-=-=-=-=-=
>
>
[-- Attachment #2: Type: text/html, Size: 5196 bytes --]
next prev parent reply other threads:[~2021-01-14 2:46 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-13 9:56 [Patch 0/2] Convert Split tool to python Bob Feng
2021-01-13 9:56 ` [Patch 1/2] BaseTools: " Bob Feng
2021-01-13 9:56 ` [Patch 2/2] BaseTools: Add unittest for Split tool Bob Feng
2021-01-14 0:53 ` 回复: [edk2-devel] [Patch 0/2] Convert Split tool to python gaoliming
2021-01-14 2:46 ` Bob Feng [this message]
2021-01-15 1:12 ` 回复: [edk2-devel] " gaoliming
2021-01-15 1:49 ` Bob Feng
2021-01-18 23:56 ` Bob Feng
2021-01-19 1:10 ` 回复: " gaoliming
2021-01-19 1:28 ` Bob Feng
[not found] ` <165B7DE8D411B030.2239@groups.io>
2021-01-19 13:58 ` Bob Feng
[not found] ` <165BA6D400EB9835.28472@groups.io>
2021-01-21 8:15 ` Bob Feng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=15493.1610592378547060035@groups.io \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox