<?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>177205</bug_id>
          
          <creation_ts>2017-09-19 15:32:57 -0700</creation_ts>
          <short_desc>webkitpy: Ignore failure to get updated selenium version</short_desc>
          <delta_ts>2017-09-21 14:37:10 -0700</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>WebKit Nightly Build</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=174331</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="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>slewis</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1350545</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-19 15:32:57 -0700</bug_when>
    <thetext>When running unit tests, we update all required packages before running tests.  In automation, however, this has become problematic because asking pypi for an updated version every time we run unit tests is resulting in periodic network errors.  We should ignore these errors if selenium is already installed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350546</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-19 15:33:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/34531669&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350563</commentid>
    <comment_count>2</comment_count>
      <attachid>321261</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-19 15:56:10 -0700</bug_when>
    <thetext>Created attachment 321261
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350598</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-09-19 18:17:08 -0700</bug_when>
    <thetext>Is selenium the only package that is problematic?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350748</commentid>
    <comment_count>4</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-20 08:10:51 -0700</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #3)
&gt; Is selenium the only package that is problematic?

The short answer is yes.

The longer answer is that for other packages which we constantly update (Gecko and Chrome drivers, for example) we don&apos;t ask PyPi for the newest version, we check other URLs.  I presume that if we had other packages which checked PyPi for the newest version, we would encounter a similar problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350789</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-09-20 09:30:56 -0700</bug_when>
    <thetext>Besides that fact that we don&apos;t know the root cause for these failures, here are a few things I&apos;m unsure of:

1. What is the concrete reason to special case selenium failures here? If we were to add another package using the newest version, would we need to add it here? Having to list packages in two places is fragile.

2. Do we actually need to have selenium use the newest version? Why is it different?

3. It seems acceptable to ignore failures when the package is already installed, but what if the failure occurs on the first run, when it&apos;s not? Shouldn&apos;t we retry?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350798</commentid>
    <comment_count>6</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-20 09:45:07 -0700</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #5)
&gt; Besides that fact that we don&apos;t know the root cause for these failures, here
&gt; are a few things I&apos;m unsure of:
&gt; 
&gt; 1. What is the concrete reason to special case selenium failures here? If we
&gt; were to add another package using the newest version, would we need to add
&gt; it here? Having to list packages in two places is fragile.

Depends on how we are querying it&apos;s newest version.  At the moment, Selenium is the only package where we query PyPi for the latest version.  In other cases, we are consulting the project sites for the most recent version.  These sites aren&apos;t having the same flakiness problems that PyPI is having.
 
&gt; 2. Do we actually need to have selenium use the newest version? Why is it
&gt; different?

My understanding after talking with Stephanie about this is we are using Selenium to compare between browsers, we don&apos;t want to use an old version of Selenium because we want to be comparing the current behavior of browsers, rather than accidentally comparing historical behavior.
 
&gt; 3. It seems acceptable to ignore failures when the package is already
&gt; installed, but what if the failure occurs on the first run, when it&apos;s not?
&gt; Shouldn&apos;t we retry?

We could retry, although, this will be a pretty rare case given that we would only trigger the retry logic the very first time a machine runs test-webkitpy.  I don&apos;t think a retry (in this case) is worth the trouble.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351035</commentid>
    <comment_count>7</comment_count>
      <attachid>321261</attachid>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-20 15:55:44 -0700</bug_when>
    <thetext>Comment on attachment 321261
Patch

collecting irc comments:
Falling back to an existing version could mean we fall back to a version which is not supported. Instead, we should enforce a minimum version, and bail/warn if the installed version does not meet the requirements.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351038</commentid>
    <comment_count>8</comment_count>
      <attachid>321261</attachid>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-20 15:57:08 -0700</bug_when>
    <thetext>Comment on attachment 321261
Patch

also, shouldn&apos;t the &apos;selenium&apos; target be a directory, and not a file?  Maybe we should use os.path.isdir()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351189</commentid>
    <comment_count>9</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-21 08:28:56 -0700</bug_when>
    <thetext>(In reply to Lucas Forschler from comment #8)
&gt; Comment on attachment 321261 [details]
&gt; Patch
&gt; 
&gt; also, shouldn&apos;t the &apos;selenium&apos; target be a directory, and not a file?  Maybe
&gt; we should use os.path.isdir()

I am checking for selenium/__init__.py.  In any case, that code will be changing to address what you mentioned in comment 7.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351277</commentid>
    <comment_count>10</comment_count>
      <attachid>321453</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-21 11:22:24 -0700</bug_when>
    <thetext>Created attachment 321453
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351348</commentid>
    <comment_count>11</comment_count>
      <attachid>321453</attachid>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-21 13:15:49 -0700</bug_when>
    <thetext>Comment on attachment 321453
Patch

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

&gt; Tools/Scripts/webkitpy/thirdparty/__init__.py:182
&gt; +                        break

We should consider writing a version check function, which would allow us to use this logic for other components, if we needed similar logic in the future. (one may already exist elsewhere in webkitpy)

&gt; Tools/Scripts/webkitpy/thirdparty/__init__.py:185
&gt; +            url = &apos;https://pypi.python.org/packages/ac/d7/1928416439d066c60f26c87a8d1b78a8edd64c7d05a0aa917fa97a8ee02d/selenium-3.5.0.tar.gz&apos;

The other URLs include the hash, let&apos;s try to be consistent. 
Example: installer.install(url=&quot;http://pypi.python.org/packages/source/J/Jinja2/Jinja2-2.6.tar.gz#md5=1c49a8825c993bfdcf55bb36897d28a2&quot;,
                                                url_subpath=&quot;Jinja2-2.6/jinja2&quot;)

&gt; Tools/Scripts/webkitpy/thirdparty/__init__.py:186
&gt; +            url_subpath = &apos;{}/selenium&apos;.format(minimum_version)

Can you include the &apos;-&apos; here, so the subpath follows existing convention (selenium-3.5.0)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351386</commentid>
    <comment_count>12</comment_count>
      <attachid>321478</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-09-21 14:17:09 -0700</bug_when>
    <thetext>Created attachment 321478
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351400</commentid>
    <comment_count>13</comment_count>
      <attachid>321478</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-21 14:37:08 -0700</bug_when>
    <thetext>Comment on attachment 321478
Patch for landing

Clearing flags on attachment: 321478

Committed r222352: &lt;http://trac.webkit.org/changeset/222352&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351401</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-21 14:37:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321261</attachid>
            <date>2017-09-19 15:56:10 -0700</date>
            <delta_ts>2017-09-21 11:22:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-177205-20170919155610.patch</filename>
            <type>text/plain</type>
            <size>1810</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIyMjIyOSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE4IEBACisyMDE3LTA5LTE5ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogSWdub3JlIGZhaWx1cmUgdG8gZ2V0IHVwZGF0ZWQgc2Vs
ZW5pdW0gdmVyc2lvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc3MjA1CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNDUzMTY2OT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTb21ldGltZSBhc2tpbmcg
UHlQSSBmb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIFNlbGVuaXVtIGZhaWxzLiBXZSBzaG91bGQg
aWdub3JlCisgICAgICAgIHN1Y2ggYSBmYWlsdXJlIGlmIFNlbGVuaXVtIGlzIGFscmVhZHkgaW5z
dGFsbGVkLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90aGlyZHBhcnR5L19faW5pdF9f
LnB5OgorICAgICAgICAoQXV0b2luc3RhbGxJbXBvcnRIb29rLl9pbnN0YWxsX3NlbGVuaXVtKTog
SWYgd2UgY2FuJ3QgZ2V0IHRoZSBsYXRlc3QgUHlQSSB1cmwsCisgICAgICAgIGZhbGxiYWNrIHRv
IHRoZSBhbHJlYWR5IGluc3RhbGxlZCB2ZXJzaW9uIG9mIFNlbGVuaXVtLgorCiAyMDE3LTA5LTE5
ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBi
b3QgY29uZmlndXJhdGlvbiBmb3IgaU9TIDExLgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS90aGlyZHBhcnR5L19faW5pdF9fLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdGhpcmRwYXJ0eS9fX2luaXRfXy5weQkocmV2aXNpb24gMjIxOTgwKQorKysgVG9vbHMv
U2NyaXB0cy93ZWJraXRweS90aGlyZHBhcnR5L19faW5pdF9fLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC0xNjgsNyArMTY4LDEzIEBAIGNsYXNzIEF1dG9pbnN0YWxsSW1wb3J0SG9vayhvYmplY3QpOgog
CiAgICAgZGVmIF9pbnN0YWxsX3NlbGVuaXVtKHNlbGYpOgogICAgICAgICBzZWxmLl9lbnN1cmVf
YXV0b2luc3RhbGxlZF9kaXJfaXNfaW5fc3lzX3BhdGgoKQotICAgICAgICB1cmwsIHVybF9zdWJw
YXRoID0gc2VsZi5nZXRfbGF0ZXN0X3B5cGlfdXJsKCdzZWxlbml1bScpCisgICAgICAgIHRyeToK
KyAgICAgICAgICAgIHVybCwgdXJsX3N1YnBhdGggPSBzZWxmLmdldF9sYXRlc3RfcHlwaV91cmwo
J3NlbGVuaXVtJykKKyAgICAgICAgZXhjZXB0IHVybGxpYjIuVVJMRXJyb3IgYXMgZToKKyAgICAg
ICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZmlsZShvcy5wYXRoLmpvaW4oX0FVVE9JTlNUQUxMRURf
RElSLCAnc2VsZW5pdW0nLCAnX19pbml0X18ucHknKSk6CisgICAgICAgICAgICAgICAgcmFpc2UK
KyAgICAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoJ1xuRmFpbGVkIHRvIHVwZGF0ZSBzZWxlbml1
bSwgZmFsbGluZyBiYWNrIHRvIGluc3RhbGxlZCB2ZXJzaW9uXG4nKQorICAgICAgICAgICAgcmV0
dXJuCiAgICAgICAgIHNlbGYuX2luc3RhbGwodXJsPXVybCwgdXJsX3N1YnBhdGg9dXJsX3N1YnBh
dGgpCiAKICAgICBkZWYgaW5zdGFsbF9jaHJvbWVkcml2ZXIoc2VsZik6Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321453</attachid>
            <date>2017-09-21 11:22:24 -0700</date>
            <delta_ts>2017-09-21 14:17:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-177205-20170921112224.patch</filename>
            <type>text/plain</type>
            <size>2720</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIyMjI5NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE4IEBACisyMDE3LTA5LTIwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogSWdub3JlIGZhaWx1cmUgdG8gZ2V0IHVwZGF0ZWQgc2Vs
ZW5pdW0gdmVyc2lvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc3MjA1CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNDUzMTY2OT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTb21ldGltZSBhc2tpbmcg
UHlQSSBmb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIFNlbGVuaXVtIGZhaWxzLiBXZSBzaG91bGQg
dHJ5IGFuZAorICAgICAgICBmYWxsYmFjayB0bywgYXQgYSBtaW5pbXVtLCB2ZXJzaW9uIDMuNS4w
IG9yIGEgbmV3ZXIgaW5zdGFsbGVkIHZlcnNpb24uCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3RoaXJkcGFydHkvX19pbml0X18ucHk6CisgICAgICAgIChBdXRvaW5zdGFsbEltcG9ydEhv
b2suX2luc3RhbGxfc2VsZW5pdW0pOiBJZiB3ZSBjYW4ndCBnZXQgdGhlIGxhdGVzdCBQeVBJIHVy
bCwKKyAgICAgICAgZmFsbGJhY2sgdG8gdmVyc2lvbiAzLjUuMCBvciBhIG5ld2VyIGluc3RhbGxl
ZCB2ZXJzaW9uLgorCiAyMDE3LTA5LTIwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+
CiAKICAgICAgICAgV1NMIHNob3VsZCBub3QgdHlwZS1jaGVjayBmdW5jdGlvbnMgaW4gdGhlIHN0
YW5kYXJkIGxpYnJhcnkgdGhhdCBpdCBkb2VzIG5vdCB1c2UKSW5kZXg6IFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdGhpcmRwYXJ0eS9fX2luaXRfXy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L3RoaXJkcGFydHkvX19pbml0X18ucHkJKHJldmlzaW9uIDIyMjI5NSkKKysr
IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGhpcmRwYXJ0eS9fX2luaXRfXy5weQkod29ya2luZyBj
b3B5KQpAQCAtMTY4LDcgKzE2OCwyMyBAQCBjbGFzcyBBdXRvaW5zdGFsbEltcG9ydEhvb2sob2Jq
ZWN0KToKIAogICAgIGRlZiBfaW5zdGFsbF9zZWxlbml1bShzZWxmKToKICAgICAgICAgc2VsZi5f
ZW5zdXJlX2F1dG9pbnN0YWxsZWRfZGlyX2lzX2luX3N5c19wYXRoKCkKLSAgICAgICAgdXJsLCB1
cmxfc3VicGF0aCA9IHNlbGYuZ2V0X2xhdGVzdF9weXBpX3VybCgnc2VsZW5pdW0nKQorICAgICAg
ICB0cnk6CisgICAgICAgICAgICB1cmwsIHVybF9zdWJwYXRoID0gc2VsZi5nZXRfbGF0ZXN0X3B5
cGlfdXJsKCdzZWxlbml1bScpCisgICAgICAgIGV4Y2VwdCB1cmxsaWIyLlVSTEVycm9yOgorICAg
ICAgICAgICAgbWluaW11bV92ZXJzaW9uID0gJzMuNS4wJworICAgICAgICAgICAgaWYgb3MucGF0
aC5pc2ZpbGUob3MucGF0aC5qb2luKF9BVVRPSU5TVEFMTEVEX0RJUiwgJ3NlbGVuaXVtJywgJ19f
aW5pdF9fLnB5JykpOgorICAgICAgICAgICAgICAgIGltcG9ydCBzZWxlbml1bS53ZWJkcml2ZXIK
KyAgICAgICAgICAgICAgICBmb3IgaSBpbiB4cmFuZ2UobGVuKG1pbmltdW1fdmVyc2lvbi5zcGxp
dCgnLicpKSk6CisgICAgICAgICAgICAgICAgICAgIGlmIGludChzZWxlbml1bS53ZWJkcml2ZXIu
X192ZXJzaW9uX18uc3BsaXQoJy4nKVtpXSkgPiBpbnQobWluaW11bV92ZXJzaW9uLnNwbGl0KCcu
JylbaV0pOgorICAgICAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZGVyci53cml0ZSgnXG5GYWls
ZWQgdG8gZmluZCBsYXRlc3Qgc2VsZW5pdW0sIGZhbGxpbmcgYmFjayB0byBleGlzdGluZyB7fSB2
ZXJzaW9uXG4nLmZvcm1hdChzZWxlbml1bS53ZWJkcml2ZXIuX192ZXJzaW9uX18pKQorICAgICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICAgICAgICAgIGVsaWYgaW50KHNl
bGVuaXVtLndlYmRyaXZlci5fX3ZlcnNpb25fXy5zcGxpdCgnLicpW2ldKSA8IGludChtaW5pbXVt
X3ZlcnNpb24uc3BsaXQoJy4nKVtpXSk6CisgICAgICAgICAgICAgICAgICAgICAgICBicmVhawor
CisgICAgICAgICAgICAjIFVSTCBmb3IgaW5zdGFsbGluZyB0aGUgbWluaW11bSByZXF1aXJlZCB2
ZXJzaW9uLgorICAgICAgICAgICAgdXJsID0gJ2h0dHBzOi8vcHlwaS5weXRob24ub3JnL3BhY2th
Z2VzL2FjL2Q3LzE5Mjg0MTY0MzlkMDY2YzYwZjI2Yzg3YThkMWI3OGE4ZWRkNjRjN2QwNWEwYWE5
MTdmYTk3YThlZTAyZC9zZWxlbml1bS0zLjUuMC50YXIuZ3onCisgICAgICAgICAgICB1cmxfc3Vi
cGF0aCA9ICd7fS9zZWxlbml1bScuZm9ybWF0KG1pbmltdW1fdmVyc2lvbikKKyAgICAgICAgICAg
IHN5cy5zdGRlcnIud3JpdGUoJ1xuRmFpbGVkIHRvIGZpbmQgbGF0ZXN0IHNlbGVuaXVtLCBmYWxs
aW5nIGJhY2sgdG8gbWluaW11bSB7fSB2ZXJzaW9uXG4nLmZvcm1hdChtaW5pbXVtX3ZlcnNpb24p
KQogICAgICAgICBzZWxmLl9pbnN0YWxsKHVybD11cmwsIHVybF9zdWJwYXRoPXVybF9zdWJwYXRo
KQogCiAgICAgZGVmIGluc3RhbGxfY2hyb21lZHJpdmVyKHNlbGYpOgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321478</attachid>
            <date>2017-09-21 14:17:09 -0700</date>
            <delta_ts>2017-09-21 14:37:08 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-177205-20170921141708.patch</filename>
            <type>text/plain</type>
            <size>3477</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIyMjM0NykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIwIEBACisyMDE3LTA5LTIwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogSWdub3JlIGZhaWx1cmUgdG8gZ2V0IHVwZGF0ZWQgc2Vs
ZW5pdW0gdmVyc2lvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc3MjA1CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNDUzMTY2OT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBMdWNhcyBGb3JzY2hsZXIuCisKKyAgICAgICAgU29tZXRpbWUgYXNraW5n
IFB5UEkgZm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiBTZWxlbml1bSBmYWlscy4gV2Ugc2hvdWxk
IHRyeSBhbmQKKyAgICAgICAgZmFsbGJhY2sgdG8sIGF0IGEgbWluaW11bSwgdmVyc2lvbiAzLjUu
MCBvciBhIG5ld2VyIGluc3RhbGxlZCB2ZXJzaW9uLgorCisgICAgICAgICogU2NyaXB0cy93ZWJr
aXRweS90aGlyZHBhcnR5L19faW5pdF9fLnB5OgorICAgICAgICAoQXV0b2luc3RhbGxJbXBvcnRI
b29rLmdyZWF0ZXJfdGhhbl9lcXVhbF90b192ZXJzaW9uKTogUmV0dXJuIHRydWUgaWYgdGhlIHNl
Y29uZAorICAgICAgICB2ZXJzaW9uIHN0cmluZyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8g
dGhlIGZpcnN0IHZlcnNpb24gc3RyaW5nLgorICAgICAgICAoQXV0b2luc3RhbGxJbXBvcnRIb29r
Ll9pbnN0YWxsX3NlbGVuaXVtKTogSWYgd2UgY2FuJ3QgZ2V0IHRoZSBsYXRlc3QgUHlQSSB1cmws
CisgICAgICAgIGZhbGxiYWNrIHRvIHZlcnNpb24gMy41LjAgb3IgYSBuZXdlciBpbnN0YWxsZWQg
dmVyc2lvbi4KKwogMjAxNy0wOS0yMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIFVucmV2aWV3ZWQsIHRlbXBvcmFyaWx5IGRpc2FibGUgbmV3IEFQSSB0ZXN0cyBp
bnRyb2R1Y2VkIGluIHIyMjIzMDggdW50aWwgdGhleSBwYXNzIG9uIEVsIENhcGl0YW4KSW5kZXg6
IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGhpcmRwYXJ0eS9fX2luaXRfXy5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3RoaXJkcGFydHkvX19pbml0X18ucHkJKHJldmlz
aW9uIDIyMjI5NSkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGhpcmRwYXJ0eS9fX2luaXRf
Xy5weQkod29ya2luZyBjb3B5KQpAQCAtMTY2LDkgKzE2NiwzMSBAQCBjbGFzcyBBdXRvaW5zdGFs
bEltcG9ydEhvb2sob2JqZWN0KToKICAgICAgICAgaW5zdGFsbGVyLmluc3RhbGwodXJsPSJodHRw
czovL3B5cGkucHl0aG9uLm9yZy9wYWNrYWdlcy9zb3VyY2UvVC9Ud2lzdGVkL1R3aXN0ZWQtMTUu
NS4wLnRhci5iejIjbWQ1PTA4MzFkN2M5MGQwMDIwMDYyZGUwZjcyODc1MzBhMjg1IiwgdXJsX3N1
YnBhdGg9IlR3aXN0ZWQtMTUuNS4wL3R3aXN0ZWQiKQogICAgICAgICBpbnN0YWxsZXIuaW5zdGFs
bCh1cmw9Imh0dHBzOi8vcHlwaS5weXRob24ub3JnL3BhY2thZ2VzL3NvdXJjZS96L3pvcGUuaW50
ZXJmYWNlL3pvcGUuaW50ZXJmYWNlLTQuMS4zLnRhci5neiNtZDU9OWFlM2QyNGMwYzc0MTVkZWIy
NDlkZDFhMTMyZjBmNzkiLCB1cmxfc3VicGF0aD0iem9wZS5pbnRlcmZhY2UtNC4xLjMvc3JjL3pv
cGUiKQogCisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBncmVhdGVyX3RoYW5fZXF1YWxfdG9f
dmVyc2lvbihtaW5pbXVtLCB2ZXJzaW9uKToKKyAgICAgICAgZm9yIGkgaW4geHJhbmdlKGxlbiht
aW5pbXVtLnNwbGl0KCcuJykpKToKKyAgICAgICAgICAgIGlmIGludCh2ZXJzaW9uLnNwbGl0KCcu
JylbaV0pID4gaW50KG1pbmltdW0uc3BsaXQoJy4nKVtpXSk6CisgICAgICAgICAgICAgICAgcmV0
dXJuIFRydWUKKyAgICAgICAgICAgIGlmIGludCh2ZXJzaW9uLnNwbGl0KCcuJylbaV0pIDwgaW50
KG1pbmltdW0uc3BsaXQoJy4nKVtpXSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisg
ICAgICAgIHJldHVybiBUcnVlCisKICAgICBkZWYgX2luc3RhbGxfc2VsZW5pdW0oc2VsZik6CiAg
ICAgICAgIHNlbGYuX2Vuc3VyZV9hdXRvaW5zdGFsbGVkX2Rpcl9pc19pbl9zeXNfcGF0aCgpCi0g
ICAgICAgIHVybCwgdXJsX3N1YnBhdGggPSBzZWxmLmdldF9sYXRlc3RfcHlwaV91cmwoJ3NlbGVu
aXVtJykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdXJsLCB1cmxfc3VicGF0aCA9IHNlbGYu
Z2V0X2xhdGVzdF9weXBpX3VybCgnc2VsZW5pdW0nKQorICAgICAgICBleGNlcHQgdXJsbGliMi5V
UkxFcnJvcjoKKyAgICAgICAgICAgIG1pbmltdW1fdmVyc2lvbiA9ICczLjUuMCcKKyAgICAgICAg
ICAgIGlmIG9zLnBhdGguaXNmaWxlKG9zLnBhdGguam9pbihfQVVUT0lOU1RBTExFRF9ESVIsICdz
ZWxlbml1bScsICdfX2luaXRfXy5weScpKToKKyAgICAgICAgICAgICAgICBpbXBvcnQgc2VsZW5p
dW0ud2ViZHJpdmVyCisgICAgICAgICAgICAgICAgaWYgQXV0b2luc3RhbGxJbXBvcnRIb29rLmdy
ZWF0ZXJfdGhhbl9lcXVhbF90b192ZXJzaW9uKG1pbmltdW1fdmVyc2lvbiwgc2VsZW5pdW0ud2Vi
ZHJpdmVyLl9fdmVyc2lvbl9fKToKKyAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZGVyci53cml0
ZSgnXG5GYWlsZWQgdG8gZmluZCBsYXRlc3Qgc2VsZW5pdW0sIGZhbGxpbmcgYmFjayB0byBleGlz
dGluZyB7fSB2ZXJzaW9uXG4nLmZvcm1hdChzZWxlbml1bS53ZWJkcml2ZXIuX192ZXJzaW9uX18p
KQorICAgICAgICAgICAgICAgICAgICByZXR1cm4KKworICAgICAgICAgICAgIyBVUkwgZm9yIGlu
c3RhbGxpbmcgdGhlIG1pbmltdW0gcmVxdWlyZWQgdmVyc2lvbi4KKyAgICAgICAgICAgIHVybCA9
ICdodHRwczovL3B5cGkucHl0aG9uLm9yZy9wYWNrYWdlcy9hYy9kNy8xOTI4NDE2NDM5ZDA2NmM2
MGYyNmM4N2E4ZDFiNzhhOGVkZDY0YzdkMDVhMGFhOTE3ZmE5N2E4ZWUwMmQvc2VsZW5pdW0tMy41
LjAudGFyLmd6Izk4NjcwMmZkZDBlMmFlYzZhNGVkYTEzNDY3OGI4YjNmJworICAgICAgICAgICAg
dXJsX3N1YnBhdGggPSAnc2VsZW5pdW0te30vc2VsZW5pdW0nLmZvcm1hdChtaW5pbXVtX3ZlcnNp
b24pCisgICAgICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCdcbkZhaWxlZCB0byBmaW5kIGxhdGVz
dCBzZWxlbml1bSwgZmFsbGluZyBiYWNrIHRvIG1pbmltdW0ge30gdmVyc2lvblxuJy5mb3JtYXQo
bWluaW11bV92ZXJzaW9uKSkKICAgICAgICAgc2VsZi5faW5zdGFsbCh1cmw9dXJsLCB1cmxfc3Vi
cGF0aD11cmxfc3VicGF0aCkKIAogICAgIGRlZiBpbnN0YWxsX2Nocm9tZWRyaXZlcihzZWxmKToK
</data>

          </attachment>
      

    </bug>

</bugzilla>