Hi Nir,

On 12/14/2017 12:39 PM, Nir Soffer wrote:
> On Thu, Dec 14, 2017 at 1:36 PM Paolo Bonzini <[email protected]
[...]
>     > Device qtests are better done in C than Python.  Python is not good at
>     > binary I/O and porting this to Python 3 will be extra work later
>     (Python
>     > 2 is set for End-of-Life in 2020, see https://pythonclock.org/).
>     >
>     > More importantly, we already have libqos in C with a guest memory
>     > allocator, PCI, and virtio support.  Fragmenting the small amount
>     effort
>     > that goes into device testing will delay libqos reaching critical
>     mass.
>     > Critical mass is where libqos provides all the infrastructure you need
>     > to set up a device and focus on your actual test instead of machine,
>     > bus, or device initialization.  Starting a Python device testing
>     effort
>     > will just lead to duplication and 2 underdeveloped device testing
>     > frameworks.
> 
>     I agree that fragmentation is bad.  However, libqos is small (about 4k
>     lines of code, maybe 3k in Python).
> 
>     I also agree that any qtest written in Python should be written in
>     Python 3 from the beginning (in fact we should consider dropping Python
>     2.x support in 2.12).  Doing so should not make binary I/O much
>     different than C.
> 
> 
> Using python 3 will make it hard to develop and test qemu on RHEL/CentOS
> which do not provide python 3 yet.

Restricting it to python 2 also make it hard to develop and test QEMU on
Arch Linux which default come with python 3 ;)

> Doing binary io in python 2 and 3 is the same, there is no need to use
> python 3 for this. The only advantage is not having to backport code
> later from 2 to 3.
> 
> Nir

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to