mbox series

[0/9] iotests: Make them work for both Python 2 and 3

Message ID 20181015141453.32632-1-mreitz@redhat.com
Headers show
Series iotests: Make them work for both Python 2 and 3 | expand

Message

Max Reitz Oct. 15, 2018, 2:14 p.m. UTC
This series prepares the iotests to work with both Python 2 and 3.  In
some places, it adds version-specific code and decides what to do based
on the version (for instance, whether to import the StringIO class from
the 'io' or the 'StringIO' module), but most of the time, it just makes
code work for both versions in general.

And when we make the switch to make Python 3 mandatory, we can simply
drop the Python 2 branches.


Max Reitz (9):
  iotests: Make nbd-fault-injector flush
  iotests: Flush in iotests.py's QemuIoInteractive
  iotests: Use Python byte strings where appropriate
  iotests: Use // for Python integer division
  iotests: Different iterator behavior in Python 3
  iotests: Explicitly inherit FDs in Python
  iotests: 'new' module replacement in 169
  iotests: Modify imports for Python 3
  iotests: Unify log outputs between Python 2 and 3

 scripts/qemu.py                          |  13 +-
 scripts/qmp/qmp.py                       |   7 +
 scripts/qtest.py                         |   2 +-
 tests/qemu-iotests/040                   |   4 +-
 tests/qemu-iotests/044                   |  20 +-
 tests/qemu-iotests/056                   |   2 +-
 tests/qemu-iotests/065                   |   4 +-
 tests/qemu-iotests/083.out               |   9 +
 tests/qemu-iotests/093                   |  18 +-
 tests/qemu-iotests/124                   |   4 +-
 tests/qemu-iotests/139                   |   2 +-
 tests/qemu-iotests/147                   |   7 +
 tests/qemu-iotests/149                   |  14 +-
 tests/qemu-iotests/151                   |  12 +-
 tests/qemu-iotests/163                   |   8 +-
 tests/qemu-iotests/169                   |   3 +-
 tests/qemu-iotests/194.out               |  22 +-
 tests/qemu-iotests/202.out               |  12 +-
 tests/qemu-iotests/203.out               |  14 +-
 tests/qemu-iotests/206.out               | 144 +++----
 tests/qemu-iotests/207                   |   4 +-
 tests/qemu-iotests/207.out               |  52 +--
 tests/qemu-iotests/208.out               |   8 +-
 tests/qemu-iotests/210.out               |  72 ++--
 tests/qemu-iotests/211.out               |  66 +--
 tests/qemu-iotests/212.out               | 102 ++---
 tests/qemu-iotests/213.out               | 124 +++---
 tests/qemu-iotests/216.out               |   4 +-
 tests/qemu-iotests/218.out               |  20 +-
 tests/qemu-iotests/219.out               | 526 +++++++++++------------
 tests/qemu-iotests/222.out               |  24 +-
 tests/qemu-iotests/iotests.py            |  64 ++-
 tests/qemu-iotests/nbd-fault-injector.py |  12 +-
 tests/qemu-iotests/qcow2.py              |  10 +-
 34 files changed, 745 insertions(+), 664 deletions(-)

Comments

Philippe Mathieu-Daudé Oct. 15, 2018, 10:19 p.m. UTC | #1
Hi Max,

On 15/10/2018 16:14, Max Reitz wrote:
> This series prepares the iotests to work with both Python 2 and 3.  In
> some places, it adds version-specific code and decides what to do based
> on the version (for instance, whether to import the StringIO class from
> the 'io' or the 'StringIO' module), but most of the time, it just makes
> code work for both versions in general.
> 
> And when we make the switch to make Python 3 mandatory, we can simply
> drop the Python 2 branches.
> 
> 
> Max Reitz (9):
>   iotests: Make nbd-fault-injector flush
>   iotests: Flush in iotests.py's QemuIoInteractive
>   iotests: Use Python byte strings where appropriate
>   iotests: Use // for Python integer division
>   iotests: Different iterator behavior in Python 3
>   iotests: Explicitly inherit FDs in Python
>   iotests: 'new' module replacement in 169
>   iotests: Modify imports for Python 3
>   iotests: Unify log outputs between Python 2 and 3

You forgot:

    MAINTAINERS: Add myself in the Python scripts section

;)

> 
>  scripts/qemu.py                          |  13 +-
>  scripts/qmp/qmp.py                       |   7 +
>  scripts/qtest.py                         |   2 +-
>  tests/qemu-iotests/040                   |   4 +-
>  tests/qemu-iotests/044                   |  20 +-
>  tests/qemu-iotests/056                   |   2 +-
>  tests/qemu-iotests/065                   |   4 +-
>  tests/qemu-iotests/083.out               |   9 +
>  tests/qemu-iotests/093                   |  18 +-
>  tests/qemu-iotests/124                   |   4 +-
>  tests/qemu-iotests/139                   |   2 +-
>  tests/qemu-iotests/147                   |   7 +
>  tests/qemu-iotests/149                   |  14 +-
>  tests/qemu-iotests/151                   |  12 +-
>  tests/qemu-iotests/163                   |   8 +-
>  tests/qemu-iotests/169                   |   3 +-
>  tests/qemu-iotests/194.out               |  22 +-
>  tests/qemu-iotests/202.out               |  12 +-
>  tests/qemu-iotests/203.out               |  14 +-
>  tests/qemu-iotests/206.out               | 144 +++----
>  tests/qemu-iotests/207                   |   4 +-
>  tests/qemu-iotests/207.out               |  52 +--
>  tests/qemu-iotests/208.out               |   8 +-
>  tests/qemu-iotests/210.out               |  72 ++--
>  tests/qemu-iotests/211.out               |  66 +--
>  tests/qemu-iotests/212.out               | 102 ++---
>  tests/qemu-iotests/213.out               | 124 +++---
>  tests/qemu-iotests/216.out               |   4 +-
>  tests/qemu-iotests/218.out               |  20 +-
>  tests/qemu-iotests/219.out               | 526 +++++++++++------------
>  tests/qemu-iotests/222.out               |  24 +-
>  tests/qemu-iotests/iotests.py            |  64 ++-
>  tests/qemu-iotests/nbd-fault-injector.py |  12 +-
>  tests/qemu-iotests/qcow2.py              |  10 +-
>  34 files changed, 745 insertions(+), 664 deletions(-)
>
Max Reitz Oct. 19, 2018, 9:08 a.m. UTC | #2
On 16.10.18 00:19, Philippe Mathieu-Daudé wrote:
> Hi Max,
> 
> On 15/10/2018 16:14, Max Reitz wrote:
>> This series prepares the iotests to work with both Python 2 and 3.  In
>> some places, it adds version-specific code and decides what to do based
>> on the version (for instance, whether to import the StringIO class from
>> the 'io' or the 'StringIO' module), but most of the time, it just makes
>> code work for both versions in general.
>>
>> And when we make the switch to make Python 3 mandatory, we can simply
>> drop the Python 2 branches.
>>
>>
>> Max Reitz (9):
>>   iotests: Make nbd-fault-injector flush
>>   iotests: Flush in iotests.py's QemuIoInteractive
>>   iotests: Use Python byte strings where appropriate
>>   iotests: Use // for Python integer division
>>   iotests: Different iterator behavior in Python 3
>>   iotests: Explicitly inherit FDs in Python
>>   iotests: 'new' module replacement in 169
>>   iotests: Modify imports for Python 3
>>   iotests: Unify log outputs between Python 2 and 3
> 
> You forgot:
> 
>     MAINTAINERS: Add myself in the Python scripts section
> 
> ;)

Aw, please, no.  You do know I don't really know Python? ;-)

Max