<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>220510</bug_id>
          
          <creation_ts>2021-01-11 06:59:55 -0800</creation_ts>
          <short_desc>[ews] Add python 3 support - part 1</short_desc>
          <delta_ts>2021-03-03 11:58:47 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=221899</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222355</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222672</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>jbedard</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1718678</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-01-11 06:59:55 -0800</bug_when>
    <thetext>Add Python 3 support to ews code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718679</commentid>
    <comment_count>1</comment_count>
      <attachid>417377</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-01-11 07:09:52 -0800</bug_when>
    <thetext>Created attachment 417377
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718692</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-11 08:44:35 -0800</bug_when>
    <thetext>Committed r271361: &lt;https://trac.webkit.org/changeset/271361&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 417377.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718693</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-11 08:45:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/72999194&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718871</commentid>
    <comment_count>4</comment_count>
      <attachid>417377</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-01-11 16:55:54 -0800</bug_when>
    <thetext>Comment on attachment 417377
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=417377&amp;action=review

&gt; Tools/ChangeLog:3
&gt; +        [ews] Add python 3 support - part 1

This looks like moving to python 3 while dropping python 2, was this the intention?

&gt; Tools/CISupport/ews-build/email_unittest.py:41
&gt; -            self.assertTrue(category in emails.keys())
&gt; +            self.assertTrue(category in list(emails.keys()))

Is this actually necessary? I think that converting to a list just makes the code slower.

&gt; Tools/CISupport/ews-build/loadConfig_unittest.py:95
&gt; +                    self.assertTrue(value[0] in list(schedulers_to_buildername_map.keys()),

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718877</commentid>
    <comment_count>5</comment_count>
      <attachid>417377</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-01-11 18:23:23 -0800</bug_when>
    <thetext>Comment on attachment 417377
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=417377&amp;action=review

&gt;&gt; Tools/ChangeLog:3
&gt;&gt; +        [ews] Add python 3 support - part 1
&gt; 
&gt; This looks like moving to python 3 while dropping python 2, was this the intention?

The intention was to make the code compatible with both python 2 and 3.

&gt;&gt; Tools/CISupport/ews-build/email_unittest.py:41
&gt;&gt; +            self.assertTrue(category in list(emails.keys()))
&gt; 
&gt; Is this actually necessary? I think that converting to a list just makes the code slower.

Not really. It makes the 2to3 tool happy though.
This is a very small dictionary, and that too in unit-tests, the performance difference wouldn&apos;t really be noticeable in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729285</commentid>
    <comment_count>6</comment_count>
      <attachid>417377</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-02-15 12:07:26 -0800</bug_when>
    <thetext>Comment on attachment 417377
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=417377&amp;action=review

&gt;&gt;&gt; Tools/CISupport/ews-build/email_unittest.py:41
&gt;&gt;&gt; +            self.assertTrue(category in list(emails.keys()))
&gt;&gt; 
&gt;&gt; Is this actually necessary? I think that converting to a list just makes the code slower.
&gt; 
&gt; Not really. It makes the 2to3 tool happy though.
&gt; This is a very small dictionary, and that too in unit-tests, the performance difference wouldn&apos;t really be noticeable in this case.

No reason to do this here. The reason the 2to3 tool blindly does this is because in most operations, the difference matters. The exception is iteration and the &apos;in&apos; operator.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417377</attachid>
            <date>2021-01-11 07:09:52 -0800</date>
            <delta_ts>2021-01-11 08:44:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220510-20210111100950.patch</filename>
            <type>text/plain</type>
            <size>3698</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3MTM1OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE0IEBACisyMDIxLTAxLTExICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBbZXdzXSBBZGQgcHl0aG9uIDMgc3VwcG9ydCAtIHBhcnQgMQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwNTEwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDSVN1cHBvcnQvZXdz
LWJ1aWxkL2VtYWlsX3VuaXR0ZXN0LnB5OgorICAgICAgICAqIENJU3VwcG9ydC9ld3MtYnVpbGQv
bG9hZENvbmZpZy5weToKKyAgICAgICAgKiBDSVN1cHBvcnQvZXdzLWJ1aWxkL2xvYWRDb25maWdf
dW5pdHRlc3QucHk6CisKIDIwMjEtMDEtMDkgIExhdXJvIE1vdXJhICA8bG1vdXJhQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0dTdHJlYW1lcl0gQnVpbGQgZmFpbHVyZSB3aXRoIGdzdC1idWlsZDog
TWlzc2luZyBnc3QvYXVkaW8vYXVkaW8uaApJbmRleDogVG9vbHMvQ0lTdXBwb3J0L2V3cy1idWls
ZC9lbWFpbF91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DSVN1cHBvcnQvZXdzLWJ1
aWxkL2VtYWlsX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyNzEzNTkpCisrKyBUb29scy9DSVN1cHBv
cnQvZXdzLWJ1aWxkL2VtYWlsX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICsz
OCw3IEBAIGNsYXNzIEVtYWlsc0RvdEpTT05UZXN0KHVuaXR0ZXN0LlRlc3RDYXMKICAgICAgICAg
ZW1haWxzID0ganNvbi5sb2FkKG9wZW4ob3MucGF0aC5qb2luKGN3ZCwgJ2VtYWlscy5qc29uJykp
KQogICAgICAgICB2YWxpZF9lbWFpbF9jYXRlZ29yaWVzID0gWydBRE1JTl9FTUFJTFMnLCAnQVBQ
TEVfQk9UX1dBVENIRVJTX0VNQUlMUycsICdFTUFJTF9JRFNfVE9fVU5TVUJTQ1JJQkUnLCAnSUdB
TElBX0pTQ19URUFNX0VNQUlMUycsICdJR0FMSUFfR1RLX1dQRV9FTUFJTFMnXQogICAgICAgICBm
b3IgY2F0ZWdvcnkgaW4gdmFsaWRfZW1haWxfY2F0ZWdvcmllczoKLSAgICAgICAgICAgIHNlbGYu
YXNzZXJ0VHJ1ZShjYXRlZ29yeSBpbiBlbWFpbHMua2V5cygpKQorICAgICAgICAgICAgc2VsZi5h
c3NlcnRUcnVlKGNhdGVnb3J5IGluIGxpc3QoZW1haWxzLmtleXMoKSkpCiAKIAogaWYgX19uYW1l
X18gPT0gJ19fbWFpbl9fJzoKSW5kZXg6IFRvb2xzL0NJU3VwcG9ydC9ld3MtYnVpbGQvbG9hZENv
bmZpZy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DSVN1cHBvcnQvZXdzLWJ1aWxkL2xvYWRDb25m
aWcucHkJKHJldmlzaW9uIDI3MTM1OSkKKysrIFRvb2xzL0NJU3VwcG9ydC9ld3MtYnVpbGQvbG9h
ZENvbmZpZy5weQkod29ya2luZyBjb3B5KQpAQCAtMTg1LDcgKzE4NSw3IEBAIGRlZiBnZXRJbnZh
bGlkVGFncygpOgogICAgIFdlIGdlbmVyYXRlIGEgbGlzdCBvZiB0YWdzIGJ5IHNwbGl0dGluZyB0
aGUgYnVpbGRlciBuYW1lLiBXZSBkbyBub3Qgd2FudCBjZXJ0YWluIHdvcmRzIGFzIHRhZy4KICAg
ICBGb3IgZS5nLiB3ZSBkb24ndCB3YW50ICcxMSdhcyB0YWcgZm9yIGJ1aWxkZXIgaU9TLTExLVNp
bXVsYXRvci1FV1MKICAgICAiIiIKLSAgICBpbnZhbGlkX3RhZ3MgPSBbc3RyKGkpIGZvciBpIGlu
IHhyYW5nZSgwLCAyMCldCisgICAgaW52YWxpZF90YWdzID0gW3N0cihpKSBmb3IgaSBpbiByYW5n
ZSgwLCAyMCldCiAgICAgaW52YWxpZF90YWdzLmV4dGVuZChbJ0VXUycsICdUcnlCb3QnXSkKICAg
ICByZXR1cm4gaW52YWxpZF90YWdzCiAKSW5kZXg6IFRvb2xzL0NJU3VwcG9ydC9ld3MtYnVpbGQv
bG9hZENvbmZpZ191bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DSVN1cHBvcnQvZXdz
LWJ1aWxkL2xvYWRDb25maWdfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI3MTM1OSkKKysrIFRvb2xz
L0NJU3VwcG9ydC9ld3MtYnVpbGQvbG9hZENvbmZpZ191bml0dGVzdC5weQkod29ya2luZyBjb3B5
KQpAQCAtODksMTAgKzg5LDEwIEBAIGNsYXNzIENvbmZpZ0RvdEpTT05UZXN0KHVuaXR0ZXN0LlRl
c3RDYXMKICAgICAgICAgICAgIHNjaGVkdWxlcnNfdG9fYnVpbGRlcm5hbWVfbWFwW3NjaGVkdWxl
clsnbmFtZSddXSA9IHNjaGVkdWxlclsnYnVpbGRlck5hbWVzJ10KIAogICAgICAgICBmb3IgYnVp
bGRlciBpbiBjb25maWdbJ2J1aWxkZXJzJ106Ci0gICAgICAgICAgICBmb3Iga2V5LCB2YWx1ZSBp
biBidWlsZGVyLml0ZXJpdGVtcygpOgorICAgICAgICAgICAgZm9yIGtleSwgdmFsdWUgaW4gYnVp
bGRlci5pdGVtcygpOgogICAgICAgICAgICAgICAgIGlmIGtleSA9PSAndHJpZ2dlcmVkX2J5JzoK
ICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGxlbih2YWx1ZSkgPT0gMSwgJ3Ry
aWdnZXJlZF9ieSAie30iIGlzIGludmFsaWQsIGl0IHNob3VsZCBjb250YWluIGEgc2luZ2xlIHRy
aWdnZXIuJy5mb3JtYXQodmFsdWUpKQotICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRy
dWUodmFsdWVbMF0gaW4gc2NoZWR1bGVyc190b19idWlsZGVybmFtZV9tYXAua2V5cygpLAorICAg
ICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUodmFsdWVbMF0gaW4gbGlzdChzY2hlZHVs
ZXJzX3RvX2J1aWxkZXJuYW1lX21hcC5rZXlzKCkpLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJ3RyaWdnZXJlZF9ieSAie30iIGZvciBidWlsZGVyICJ7fSIgaXMgbm90IGxp
c3RlZCBpbiBzY2hlZHVsZXJzIHNlY3Rpb24uJy5mb3JtYXQodmFsdWVbMF0sIGJ1aWxkZXJbJ25h
bWUnXSkpCiAKICAgICAgICAgICAgICAgICAgICAgIyBFbnN1cmUgdGhhdCB0aGUgdHJpZ2dlcmVk
X2J5IGlzIGNvcnJlY3QsIHZlcmlmeSBieSBtYXRjaGluZyB0aGF0IHRoZSBidWlsZGVyIGZvciB0
aGUgdHJpZ2dlcmVkX2J5IHNjaGVkdWxlciBhY3R1YWxseSB0cmlnZ2VycyBjdXJyZW50IGJ1aWxk
ZXIKQEAgLTEyNyw3ICsxMjcsNyBAQCBjbGFzcyBUYWdzRm9yQnVpbGRlclRlc3QodW5pdHRlc3Qu
VGVzdENhCiAgICAgICAgIHNlbGYudmVyaWZ5VGFncygnbWFjT1MtSGlnaC1TaWVycmEtUmVsZWFz
ZS0zMmJpdC1XSzItRVdTJywgWydtYWNPUycsICdIaWdoJywgJ1NpZXJyYScsICdSZWxlYXNlJywg
J1dLMicsICczMmJpdCddKQogCiAgICAgZGVmIHRlc3RfdGFnc190eXBlKHNlbGYpOgotICAgICAg
ICB0YWdzID0gbG9hZENvbmZpZy5nZXRUYWdzRm9yQnVpbGRlcih7J25hbWUnOiB1J2lPUy0xMS1F
V1MnfSkKKyAgICAgICAgdGFncyA9IGxvYWRDb25maWcuZ2V0VGFnc0ZvckJ1aWxkZXIoeyduYW1l
JzogJ2lPUy0xMS1FV1MnfSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0YWdzLCBbJ2lPUydd
KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR5cGUodGFnc1swXSksIHN0cikKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>