<?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>152685</bug_id>
          
          <creation_ts>2016-01-04 03:02:32 -0800</creation_ts>
          <short_desc>W3C test importer should have an option to clean the destination directory</short_desc>
          <delta_ts>2016-02-26 02:10:06 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1152285</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-01-04 03:02:32 -0800</bug_when>
    <thetext>When regularly importing tests from W3C to WebKit, the process is usually:
1. Remove all files, except -expected.txt files from LayoutTests/imported/w3c/web-platform-tests
2. Import test using test importer
3. Remove -expected.txt files that no longer have a corresponding file.

It would be nice for test importer to automate step 1 and 3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1152295</commentid>
    <comment_count>1</comment_count>
      <attachid>268182</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-01-04 05:56:30 -0800</bug_when>
    <thetext>Created attachment 268182
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1152372</commentid>
    <comment_count>2</comment_count>
      <attachid>268182</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-01-04 10:29:38 -0800</bug_when>
    <thetext>Comment on attachment 268182
Patch

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

r-&apos;ing this patch because it will delete files in .svn directories and .gitattributes files.

&gt; Tools/Scripts/webkitpy/w3c/test_importer.py:235
&gt; +    def _should_not_keep_when_importing(self, filesystem, dirname, filename):

Would it make sense to keep all hidden files? At the very least we should also keep .gitattributes files and .svn directories. 

I also noticed in my checkout of /LayoutTests/imported/w3c/web-platform-tests I have files .tools.url and .resources.url. I take it these are generated and OK to delete.

&gt; Tools/Scripts/webkitpy/w3c/test_importer.py:237
&gt; +            return False

It tends to be more difficult to reason about negations and concepts like &quot;not keeping a file&quot; than &quot;keeping a file&quot;. I suggest either changing the meaning of this function such that it returns whether to &quot;keep a file when importing&quot; or adding inline comments on this line (line 237), line 239, and line 240 to better describe the implications of the return value. Such comments could be the form &quot;Keep&quot;, &quot;Keep&quot;, &quot;Do not keep&quot;, respectively.

&gt; Tools/Scripts/webkitpy/w3c/test_importer_unittest.py:199
&gt; +            &apos;/mock-checkout/WebKitBuild/w3c-tests/csswg-tests/test.html&apos;: &apos;1&apos;,

Can we add tests for .gitignore, .gitattributes, and .svn directories?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1152677</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-01-05 00:34:28 -0800</bug_when>
    <thetext>Thanks for the review.

&gt; r-&apos;ing this patch because it will delete files in .svn directories and
&gt; .gitattributes files.

Right, I will fix that.

&gt; &gt; Tools/Scripts/webkitpy/w3c/test_importer.py:235
&gt; &gt; +    def _should_not_keep_when_importing(self, filesystem, dirname, filename):
&gt; 
&gt; Would it make sense to keep all hidden files? At the very least we should
&gt; also keep .gitattributes files and .svn directories. 
&gt; 
&gt; I also noticed in my checkout of
&gt; /LayoutTests/imported/w3c/web-platform-tests I have files .tools.url and
&gt; .resources.url. I take it these are generated and OK to delete.

It is ok to delete them right.
But it does not hurt keeping them either.
I will change the routine to keep all hidden files.

&gt; &gt; Tools/Scripts/webkitpy/w3c/test_importer.py:237
&gt; &gt; +            return False
&gt; 
&gt; It tends to be more difficult to reason about negations and concepts like
&gt; &quot;not keeping a file&quot; than &quot;keeping a file&quot;. I suggest either changing the
&gt; meaning of this function such that it returns whether to &quot;keep a file when
&gt; importing&quot; or adding inline comments on this line (line 237), line 239, and
&gt; line 240 to better describe the implications of the return value. Such
&gt; comments could be the form &quot;Keep&quot;, &quot;Keep&quot;, &quot;Do not keep&quot;, respectively.

Right.
I will change the routine name to _should_remove_before_importing.
Then it is clearer.

&gt; 
&gt; &gt; Tools/Scripts/webkitpy/w3c/test_importer_unittest.py:199
&gt; &gt; +            &apos;/mock-checkout/WebKitBuild/w3c-tests/csswg-tests/test.html&apos;: &apos;1&apos;,
&gt; 
&gt; Can we add tests for .gitignore, .gitattributes, and .svn directories?

Will add it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1152678</commentid>
    <comment_count>4</comment_count>
      <attachid>268272</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-01-05 00:46:21 -0800</bug_when>
    <thetext>Created attachment 268272
Keeping hidden files</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168464</commentid>
    <comment_count>5</comment_count>
      <attachid>268272</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-26 02:10:02 -0800</bug_when>
    <thetext>Comment on attachment 268272
Keeping hidden files

Clearing flags on attachment: 268272

Committed r197163: &lt;http://trac.webkit.org/changeset/197163&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168465</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-26 02:10:06 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>268182</attachid>
            <date>2016-01-04 05:56:30 -0800</date>
            <delta_ts>2016-01-05 00:46:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-152685-20160104145555.patch</filename>
            <type>text/plain</type>
            <size>9566</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0NTI3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMzk2NWQ1ZGE2MjBkZmYyNmU1MWZmZGJjNjEwOTYzOGM0
N2I3NWNlMS4uYmMwMGFiMjZiZDgyNjQ4ZjI0NTdiNTZhNzIwZjViMmYyZjUyOTVjZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMy
IEBACisyMDE2LTAxLTA0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24u
ZnI+CisKKyAgICAgICAgVzNDIHRlc3QgaW1wb3J0ZXIgc2hvdWxkIGhhdmUgYW4gb3B0aW9uIHRv
IGNsZWFuIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjY4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGluZyAtLWNsZWFuLWRlc3QtZGlyIG9wdGlvbiB0
byBXM0MgdGVzdCBpbXBvcnRlci4KKyAgICAgICAgV2hlbiB0aGlzIG9wdGlvbiBpcyBzZXQsIGFs
bCBmaWxlcyBpbiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5IHdpbGwgYmUgZGVsZXRlZAorICAg
ICAgICBleGNlcHQgZm9yIFdlYktpdCBzcGVjaWZpYyBmaWxlcyAodGVzdCBleHBlY3RhdGlvbnMs
IC5naXRpZ25vcmUuLi4pIGJlZm9yZSBuZXcgdGVzdHMgaW1wb3J0LgorICAgICAgICBEYW5nbGlu
ZyB0ZXN0IGV4cGVjdGF0aW9ucyBhcmUgcmVtb3ZlZCBhZnRlciB0ZXN0cyBpbXBvcnQuJworCisg
ICAgICAgIEFkZGluZyB1bml0IHRlc3QgYW5kIG1pbm9yIHJlZmFjdG9yaW5nIGZvciB0aGUgb3Ro
ZXIgdGVzdHMuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3czYy90ZXN0X2ltcG9ydGVy
LnB5OgorICAgICAgICAocGFyc2VfYXJncyk6IEFkZCAnLS1jbGVhbi1kZXN0LWRpcicgb3B0aW9u
LgorICAgICAgICAoVGVzdEltcG9ydGVyLmRvX2ltcG9ydCk6CisgICAgICAgIChUZXN0SW1wb3J0
ZXIuX2lzX2Jhc2VsaW5lKTogaGVscGVyIHJvdXRpbmUgdG8gY2FwdHVyZSAtZXhwZWN0ZWQudHh0
IGZpbGVzLgorICAgICAgICAoVGVzdEltcG9ydGVyKToKKyAgICAgICAgKFRlc3RJbXBvcnRlci5f
c2hvdWxkX25vdF9rZWVwX3doZW5faW1wb3J0aW5nKTogaGVscGVyIHJvdXRpbmUgdG8gZmlsdGVy
IGZpbGVzIHRoYXQgc2hvdWxkIG5vdCBiZSBjbGVhbmVkIGJlZm9yZSBpbXBvcnRpbmcuCisgICAg
ICAgIChUZXN0SW1wb3J0ZXIuY2xlYW5fZGVzdGluYXRpb25fZGlyZWN0b3J5KToKKyAgICAgICAg
KFRlc3RJbXBvcnRlci5yZW1vdmVfZGFuZ2xpbmdfZXhwZWN0YXRpb25zKToKKyAgICAgICAgKiBT
Y3JpcHRzL3dlYmtpdHB5L3czYy90ZXN0X2ltcG9ydGVyX3VuaXR0ZXN0LnB5OgorICAgICAgICAo
VGVzdEltcG9ydGVyVGVzdC5fcGFyc2Vfb3B0aW9ucyk6CisgICAgICAgIChUZXN0SW1wb3J0ZXJU
ZXN0LnRlc3RfaW1wb3J0X2Rpcl93aXRoX25vX3Rlc3RzX2FuZF9ub19oZyk6CisgICAgICAgIChU
ZXN0SW1wb3J0ZXJUZXN0LnRlc3RfaW1wb3J0X2Rpcl93aXRoX25vX3Rlc3RzKToKKyAgICAgICAg
KFRlc3RJbXBvcnRlclRlc3QudGVzdF9pbXBvcnRfZGlyX3dpdGhfZW1wdHlfaW5pdF9weSk6Cisg
ICAgICAgICh0ZXN0X2NsZWFuX2RpcmVjdG9yeV9vcHRpb24pOgorCiAyMDE2LTAxLTAzICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkLCBtb3ZlIEZyw6lkw6lyaWMgV2FuZyB0byBjb21taXR0ZXJzIGxpc3QKZGlmZiAtLWdpdCBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdzNjL3Rlc3RfaW1wb3J0ZXIucHkgYi9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L3czYy90ZXN0X2ltcG9ydGVyLnB5CmluZGV4IDRhMjZmZjc4MWM2NzE4ZWRh
MzNlNTJkY2IwMzJhZGM2OTJjMDlhMTIuLjgyMTFkNGRjM2ZjMzY0NTQyYjk3NjQ1MDc0MDE0ZTQ5
NWZmYmJmNjYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdzNjL3Rlc3RfaW1w
b3J0ZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS93M2MvdGVzdF9pbXBvcnRlci5w
eQpAQCAtMTQ3LDYgKzE0Nyw5IEBAIGRlZiBwYXJzZV9hcmdzKGFyZ3MpOgogICAgIHBhcnNlci5h
ZGRfYXJndW1lbnQoJy0taW1wb3J0LWFsbCcsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGRlZmF1bHQ9
RmFsc2UsCiAgICAgICAgICBoZWxwPSdJZ25vcmUgdGhlIEltcG9ydEV4cGVjdGF0aW9ucyBmaWxl
LiBBbGwgdGVzdHMgd2lsbCBiZSBpbXBvcnRlZC4gVGhpcyBvcHRpb24gb25seSBhcHBsaWVzIHdo
ZW4gdGVzdHMgYXJlIGRvd25sb2FkZWQgZnJvbSBXM0MgcmVwb3NpdG9yeScpCiAKKyAgICBwYXJz
ZXIuYWRkX2FyZ3VtZW50KCctLWNsZWFuLWRlc3QtZGlyJywgYWN0aW9uPSdzdG9yZV90cnVlJywg
ZGVzdD0nY2xlYW5fZGVzdGluYXRpb25fZGlyZWN0b3J5JywgZGVmYXVsdD1GYWxzZSwKKyAgICAg
ICAgIGhlbHA9J0NsZWFuIGRlc3RpbmF0aW9uIGRpcmVjdG9yeS4gQWxsIGZpbGVzIGluIHRoZSBk
ZXN0aW5hdGlvbiBkaXJlY3Rvcnkgd2lsbCBiZSBkZWxldGVkIGV4Y2VwdCBmb3IgV2ViS2l0IHNw
ZWNpZmljIGZpbGVzICh0ZXN0IGV4cGVjdGF0aW9ucywgLmdpdGlnbm9yZS4uLikgYmVmb3JlIG5l
dyB0ZXN0cyBpbXBvcnQuIERhbmdsaW5nIHRlc3QgZXhwZWN0YXRpb25zIChleHBlY3RhdGlvbiBm
aWxlIHRoYXQgaXMgbm8gbG9uZ2VyIHJlbGF0ZWQgdG8gYSB0ZXN0KSBhcmUgcmVtb3ZlZCBhZnRl
ciB0ZXN0cyBpbXBvcnQuJykKKwogICAgIG9wdGlvbnMsIGFyZ3MgPSBwYXJzZXIucGFyc2Vfa25v
d25fYXJncyhhcmdzKQogICAgIGlmIGxlbihhcmdzKSA+IDE6CiAgICAgICAgIHBhcnNlci5lcnJv
cignSW5jb3JyZWN0IG51bWJlciBvZiBhcmd1bWVudHMnKQpAQCAtMTg1LDE0ICsxODgsMjAgQEAg
Y2xhc3MgVGVzdEltcG9ydGVyKG9iamVjdCk6CiAgICAgICAgICAgICBzZWxmLmZpbGVzeXN0ZW0u
bWF5YmVfbWFrZV9kaXJlY3Rvcnkoc2VsZi5zb3VyY2VfZGlyZWN0b3J5KQogICAgICAgICAgICAg
c2VsZi50ZXN0X2Rvd25sb2FkZXIoKS5kb3dubG9hZF90ZXN0cyhzZWxmLnNvdXJjZV9kaXJlY3Rv
cnksIHNlbGYub3B0aW9ucy50ZXN0X3BhdGhzKQogCi0gICAgICAgIGlmIG5vdCBzZWxmLm9wdGlv
bnMudGVzdF9wYXRocyBvciBzZWxmLl9pbXBvcnRpbmdfZG93bmxvYWRlZF90ZXN0czoKLSAgICAg
ICAgICAgIHNlbGYuZmluZF9pbXBvcnRhYmxlX3Rlc3RzKHNlbGYuc291cmNlX2RpcmVjdG9yeSkK
LSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGZvciB0ZXN0X3BhdGggaW4gc2VsZi5vcHRpb25z
LnRlc3RfcGF0aHM6Ci0gICAgICAgICAgICAgICAgc2VsZi5maW5kX2ltcG9ydGFibGVfdGVzdHMo
c2VsZi5maWxlc3lzdGVtLmpvaW4oc2VsZi5zb3VyY2VfZGlyZWN0b3J5LCB0ZXN0X3BhdGgpKQor
ICAgICAgICB0ZXN0X3BhdGhzID0gc2VsZi5vcHRpb25zLnRlc3RfcGF0aHMgaWYgc2VsZi5vcHRp
b25zLnRlc3RfcGF0aHMgZWxzZSBbdGVzdF9yZXBvc2l0b3J5WyduYW1lJ10gZm9yIHRlc3RfcmVw
b3NpdG9yeSBpbiBzZWxmLnRlc3RfZG93bmxvYWRlcigpLnRlc3RfcmVwb3NpdG9yaWVzXQorICAg
ICAgICBmb3IgdGVzdF9wYXRoIGluIHRlc3RfcGF0aHM6CisgICAgICAgICAgICBzZWxmLmZpbmRf
aW1wb3J0YWJsZV90ZXN0cyhzZWxmLmZpbGVzeXN0ZW0uam9pbihzZWxmLnNvdXJjZV9kaXJlY3Rv
cnksIHRlc3RfcGF0aCkpCisKKyAgICAgICAgaWYgc2VsZi5vcHRpb25zLmNsZWFuX2Rlc3RpbmF0
aW9uX2RpcmVjdG9yeToKKyAgICAgICAgICAgIGZvciB0ZXN0X3BhdGggaW4gdGVzdF9wYXRoczoK
KyAgICAgICAgICAgICAgICBzZWxmLmNsZWFuX2Rlc3RpbmF0aW9uX2RpcmVjdG9yeSh0ZXN0X3Bh
dGgpCiAKICAgICAgICAgc2VsZi5pbXBvcnRfdGVzdHMoKQogCisgICAgICAgIGlmIHNlbGYub3B0
aW9ucy5jbGVhbl9kZXN0aW5hdGlvbl9kaXJlY3Rvcnk6CisgICAgICAgICAgICBmb3IgdGVzdF9w
YXRoIGluIHRlc3RfcGF0aHM6CisgICAgICAgICAgICAgICAgc2VsZi5yZW1vdmVfZGFuZ2xpbmdf
ZXhwZWN0YXRpb25zKHRlc3RfcGF0aCkKKwogICAgICAgICBpZiBzZWxmLl9pbXBvcnRpbmdfZG93
bmxvYWRlZF90ZXN0czoKICAgICAgICAgICAgIHNlbGYuZ2VuZXJhdGVfZ2l0X3N1Ym1vZHVsZXNf
ZGVzY3JpcHRpb25fZm9yX2FsbF9yZXBvc2l0b3JpZXMoKQogCkBAIC0yMjAsNiArMjI5LDI5IEBA
IGNsYXNzIFRlc3RJbXBvcnRlcihvYmplY3QpOgogICAgICAgICAgICAgcmV0dXJuIG5vdCBmaWxl
bmFtZSA9PSAnLmh0YWNjZXNzJwogICAgICAgICByZXR1cm4gRmFsc2UKIAorICAgIGRlZiBfaXNf
YmFzZWxpbmUoc2VsZiwgZmlsZXN5c3RlbSwgZGlybmFtZSwgZmlsZW5hbWUpOgorICAgICAgICBy
ZXR1cm4gZmlsZW5hbWUuZW5kc3dpdGgoJy1leHBlY3RlZC50eHQnKQorCisgICAgZGVmIF9zaG91
bGRfbm90X2tlZXBfd2hlbl9pbXBvcnRpbmcoc2VsZiwgZmlsZXN5c3RlbSwgZGlybmFtZSwgZmls
ZW5hbWUpOgorICAgICAgICBpZiBzZWxmLl9pc19iYXNlbGluZShmaWxlc3lzdGVtLCBkaXJuYW1l
LCBmaWxlbmFtZSk6CisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgaWYgZmlsZW5h
bWUgPT0gIi5naXRpZ25vcmUiOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJl
dHVybiBUcnVlCisKKyAgICBkZWYgY2xlYW5fZGVzdGluYXRpb25fZGlyZWN0b3J5KHNlbGYsIGZp
bGVuYW1lKToKKyAgICAgICAgZGlyZWN0b3J5ID0gc2VsZi5maWxlc3lzdGVtLmpvaW4oc2VsZi5k
ZXN0aW5hdGlvbl9kaXJlY3RvcnksIGZpbGVuYW1lKQorICAgICAgICBmb3IgcmVsYXRpdmVfcGF0
aCBpbiBzZWxmLmZpbGVzeXN0ZW0uZmlsZXNfdW5kZXIoZGlyZWN0b3J5LCBmaWxlX2ZpbHRlcj1z
ZWxmLl9zaG91bGRfbm90X2tlZXBfd2hlbl9pbXBvcnRpbmcpOgorICAgICAgICAgICAgc2VsZi5m
aWxlc3lzdGVtLnJlbW92ZShzZWxmLmZpbGVzeXN0ZW0uam9pbihkaXJlY3RvcnksIHJlbGF0aXZl
X3BhdGgpKQorCisgICAgZGVmIHJlbW92ZV9kYW5nbGluZ19leHBlY3RhdGlvbnMoc2VsZiwgZmls
ZW5hbWUpOgorICAgICAgICAjRklYTUU6IENsZWFuIGFsc28gdGhlIGV4cGVjdGVkIGZpbGVzIHN0
b3JlZCBpbiBhbGwgcGxhdGZvcm0gc3BlY2lmaWMgZm9sZGVycy4KKyAgICAgICAgZGlyZWN0b3J5
ID0gc2VsZi5maWxlc3lzdGVtLmpvaW4oc2VsZi5kZXN0aW5hdGlvbl9kaXJlY3RvcnksIGZpbGVu
YW1lKQorICAgICAgICBmb3IgcmVsYXRpdmVfcGF0aCBpbiBzZWxmLmZpbGVzeXN0ZW0uZmlsZXNf
dW5kZXIoZGlyZWN0b3J5LCBmaWxlX2ZpbHRlcj1zZWxmLl9pc19iYXNlbGluZSk6CisgICAgICAg
ICAgICBwYXRoID0gc2VsZi5maWxlc3lzdGVtLmpvaW4oZGlyZWN0b3J5LCByZWxhdGl2ZV9wYXRo
KQorICAgICAgICAgICAgaWYgc2VsZi5maWxlc3lzdGVtLmdsb2IocGF0aC5yZXBsYWNlKCctZXhw
ZWN0ZWQudHh0JywgJyonKSkgPT0gW3BhdGhdOgorICAgICAgICAgICAgICAgIHNlbGYuZmlsZXN5
c3RlbS5yZW1vdmUocGF0aCkKKwogICAgIGRlZiBmaW5kX2ltcG9ydGFibGVfdGVzdHMoc2VsZiwg
ZGlyZWN0b3J5KToKICAgICAgICAgZGVmIHNob3VsZF9rZWVwX3N1YmRpcihmaWxlc3lzdGVtLCBw
YXRoKToKICAgICAgICAgICAgIGlmIHNlbGYuX2ltcG9ydGluZ19kb3dubG9hZGVkX3Rlc3RzOgpk
aWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS93M2MvdGVzdF9pbXBvcnRlcl91bml0
dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdzNjL3Rlc3RfaW1wb3J0ZXJfdW5pdHRl
c3QucHkKaW5kZXggODgwZmU0ZGFiMjI2NmU2MDM5ODY1MjVmMjVhNTQzMTZkMThhZWI3Zi4uOGYy
Yjc4ZjY5M2MxMjcwODIzYmZjOTY3YjY4NzMzMWQyOTM4NzFmZiAxMDA2NDQKLS0tIGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS93M2MvdGVzdF9pbXBvcnRlcl91bml0dGVzdC5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3czYy90ZXN0X2ltcG9ydGVyX3VuaXR0ZXN0LnB5CkBAIC03MCwx
MiArNzAsMTYgQEAgRkFLRV9SRVBPU0lUT1JZID0gewogCiBjbGFzcyBUZXN0SW1wb3J0ZXJUZXN0
KHVuaXR0ZXN0LlRlc3RDYXNlKToKIAorICAgIGRlZiBfcGFyc2Vfb3B0aW9ucyhzZWxmLCBhcmdz
KToKKyAgICAgICAgb3B0aW9ucywgYXJncyA9IHBhcnNlX2FyZ3MoYXJncykKKyAgICAgICAgcmV0
dXJuIG9wdGlvbnMKKwogICAgIGRlZiB0ZXN0X2ltcG9ydF9kaXJfd2l0aF9ub190ZXN0c19hbmRf
bm9faGcoc2VsZik6CiAgICAgICAgIGhvc3QgPSBNb2NrSG9zdCgpCiAgICAgICAgIGhvc3QuZXhl
Y3V0aXZlID0gTW9ja0V4ZWN1dGl2ZTIoZXhjZXB0aW9uPU9TRXJyb3IoKSkKICAgICAgICAgaG9z
dC5maWxlc3lzdGVtID0gTW9ja0ZpbGVTeXN0ZW0oZmlsZXM9RkFLRV9GSUxFUykKIAotICAgICAg
ICBpbXBvcnRlciA9IFRlc3RJbXBvcnRlcihob3N0LCBGQUtFX1NPVVJDRV9ESVIsIG9wdHBhcnNl
LlZhbHVlcyh7Im92ZXJ3cml0ZSI6IEZhbHNlLCAnZGVzdGluYXRpb24nOiAndzNjJywgJ3Rlc3Rf
cGF0aHMnOiBbRkFLRV9URVNUX1BBVEhdfSkpCisgICAgICAgIGltcG9ydGVyID0gVGVzdEltcG9y
dGVyKGhvc3QsIEZBS0VfU09VUkNFX0RJUiwgc2VsZi5fcGFyc2Vfb3B0aW9ucyhbJy1uJywgJy1k
JywgJ3czYycsICctdCcsIEZBS0VfVEVTVF9QQVRIXSkpCiAKICAgICAgICAgb2MgPSBPdXRwdXRD
YXB0dXJlKCkKICAgICAgICAgb2MuY2FwdHVyZV9vdXRwdXQoKQpAQCAtODksNyArOTMsNyBAQCBj
bGFzcyBUZXN0SW1wb3J0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgaG9zdC5l
eGVjdXRpdmUgPSBNb2NrRXhlY3V0aXZlMihleGNlcHRpb249U2NyaXB0RXJyb3IoImFib3J0OiBu
byByZXBvc2l0b3J5IGZvdW5kIGluICcvVm9sdW1lcy9Tb3VyY2Uvc3JjL3drL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdzNjJyAoLmhnIG5vdCBmb3VuZCkhIikpCiAgICAgICAgIGhvc3QuZmlsZXN5
c3RlbSA9IE1vY2tGaWxlU3lzdGVtKGZpbGVzPUZBS0VfRklMRVMpCiAKLSAgICAgICAgaW1wb3J0
ZXIgPSBUZXN0SW1wb3J0ZXIoaG9zdCwgRkFLRV9TT1VSQ0VfRElSLCBvcHRwYXJzZS5WYWx1ZXMo
eyJvdmVyd3JpdGUiOiBGYWxzZSwgJ2Rlc3RpbmF0aW9uJzogJ3czYycsICd0ZXN0X3BhdGhzJzog
W0ZBS0VfVEVTVF9QQVRIXX0pKQorICAgICAgICBpbXBvcnRlciA9IFRlc3RJbXBvcnRlcihob3N0
LCBGQUtFX1NPVVJDRV9ESVIsIHNlbGYuX3BhcnNlX29wdGlvbnMoWyctbicsICctZCcsICd3M2Mn
LCAnLXQnLCBGQUtFX1RFU1RfUEFUSF0pKQogICAgICAgICBvYyA9IE91dHB1dENhcHR1cmUoKQog
ICAgICAgICBvYy5jYXB0dXJlX291dHB1dCgpCiAgICAgICAgIHRyeToKQEAgLTEwNiw3ICsxMTAs
NyBAQCBjbGFzcyBUZXN0SW1wb3J0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAg
aG9zdCA9IE1vY2tIb3N0KCkKICAgICAgICAgaG9zdC5maWxlc3lzdGVtID0gTW9ja0ZpbGVTeXN0
ZW0oZmlsZXM9RkFLRV9GSUxFUykKIAotICAgICAgICBpbXBvcnRlciA9IFRlc3RJbXBvcnRlciho
b3N0LCBGQUtFX1NPVVJDRV9ESVIsIG9wdHBhcnNlLlZhbHVlcyh7Im92ZXJ3cml0ZSI6IEZhbHNl
LCAnZGVzdGluYXRpb24nOiAndzNjJywgJ3Rlc3RfcGF0aHMnOiBbJy90ZXN0cy9jc3N3ZyddfSkp
CisgICAgICAgIGltcG9ydGVyID0gVGVzdEltcG9ydGVyKGhvc3QsIEZBS0VfU09VUkNFX0RJUiwg
c2VsZi5fcGFyc2Vfb3B0aW9ucyhbJy1uJywgJy1kJywgJ3czYycsICctdCcsICcvdGVzdHMvY3Nz
d2cnXSkpCiAgICAgICAgIGltcG9ydGVyLmRvX2ltcG9ydCgpCiAKICAgICAgICAgc2VsZi5hc3Nl
cnRUcnVlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoIi9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3Rz
L3czYy90ZXN0MS9fX2luaXRfXy5weSIpKQpAQCAtMTg1LDUgKzE4OSwyMyBAQCBjbGFzcyBUZXN0
SW1wb3J0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgc2VsZi5hc3NlcnRGYWxz
ZShmcy5leGlzdHMoJy9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3RzL3czYy9zdHJlYW1zLWFwaS9y
ZWZlcmVuY2UtaW1wbGVtZW50YXRpb24vd2ViLXBsYXRmb3JtLXRlc3RzL3Rlc3QuaHRtbCcpKQog
ICAgICAgICBzZWxmLmFzc2VydFRydWUoZnMuZXhpc3RzKCcvbW9jay1jaGVja291dC9MYXlvdXRU
ZXN0cy93M2Mvc3RyZWFtcy1hcGkvdGVzdC5odG1sJykpCiAKKyAgICBkZWYgdGVzdF9jbGVhbl9k
aXJlY3Rvcnlfb3B0aW9uKHNlbGYpOgorICAgICAgICBGQUtFX0ZJTEVTID0geworICAgICAgICAg
ICAgJy9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3RzL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvb2xk
LXRlc3QuaHRtbCc6ICcxJywKKyAgICAgICAgICAgICcvbW9jay1jaGVja291dC9MYXlvdXRUZXN0
cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL29sZC10ZXN0LWV4cGVjdGVkLnR4dCc6ICcyJywKKyAg
ICAgICAgICAgICcvbW9jay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2V4aXN0aW5nLXRlc3QuaHRtbCc6ICczJywKKyAgICAgICAgICAgICcvbW9jay1jaGVja291
dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2V4aXN0aW5nLXRlc3QtZXhwZWN0
ZWQudHh0JzogJzQnLAorICAgICAgICAgICAgJy9tb2NrLWNoZWNrb3V0L1dlYktpdEJ1aWxkL3cz
Yy10ZXN0cy93ZWItcGxhdGZvcm0tdGVzdHMvZXhpc3RpbmctdGVzdC5odG1sJzogJzUnLAorICAg
ICAgICAgICAgJy9tb2NrLWNoZWNrb3V0L1dlYktpdEJ1aWxkL3czYy10ZXN0cy9jc3N3Zy10ZXN0
cy90ZXN0Lmh0bWwnOiAnMScsCisgICAgICAgIH0KKworICAgICAgICBGQUtFX0ZJTEVTLnVwZGF0
ZShGQUtFX1JFUE9TSVRPUlkpCisKKyAgICAgICAgZnMgPSBzZWxmLmltcG9ydF9kb3dubG9hZGVk
X3Rlc3RzKFsnLS1uby1mZXRjaCcsICctLWltcG9ydC1hbGwnLCAnLWQnLCAndzNjJywgJy0tY2xl
YW4tZGVzdC1kaXInXSwgRkFLRV9GSUxFUykKKworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZz
LmV4aXN0cygnL21vY2stY2hlY2tvdXQvTGF5b3V0VGVzdHMvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9vbGQtdGVzdC5odG1sJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZnMuZXhpc3RzKCcv
bW9jay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL29sZC10ZXN0
LWV4cGVjdGVkLnR4dCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZnMuZXhpc3RzKCcvbW9j
ay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2V4aXN0aW5nLXRl
c3QuaHRtbCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZnMuZXhpc3RzKCcvbW9jay1jaGVj
a291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2V4aXN0aW5nLXRlc3QtZXhw
ZWN0ZWQudHh0JykpCiAKICAgICAjIEZJWE1FOiBOZWVkcyBtb3JlIHRlc3RzLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>268272</attachid>
            <date>2016-01-05 00:46:21 -0800</date>
            <delta_ts>2016-02-26 02:10:02 -0800</delta_ts>
            <desc>Keeping hidden files</desc>
            <filename>bug-152685-20160105094546.patch</filename>
            <type>text/plain</type>
            <size>10092</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0NTc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmZmOTQxZmNjMWQ1ZjkyZjJhM2M4ZGQ4ZTVkNDVlYjRh
Y2I4Y2UwYS4uYTc0OTJlM2FjMjI3YmIyMDJhMmY3OTM2MWM1N2ZjNTNhNGVkYmY0ZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMy
IEBACisyMDE2LTAxLTA0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24u
ZnI+CisKKyAgICAgICAgVzNDIHRlc3QgaW1wb3J0ZXIgc2hvdWxkIGhhdmUgYW4gb3B0aW9uIHRv
IGNsZWFuIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjY4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGluZyAtLWNsZWFuLWRlc3QtZGlyIG9wdGlvbiB0
byBXM0MgdGVzdCBpbXBvcnRlci4KKyAgICAgICAgV2hlbiB0aGlzIG9wdGlvbiBpcyBzZXQsIGFs
bCBmaWxlcyBpbiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5IHdpbGwgYmUgZGVsZXRlZAorICAg
ICAgICBleGNlcHQgZm9yIFdlYktpdCBzcGVjaWZpYyBmaWxlcyAodGVzdCBleHBlY3RhdGlvbnMs
IC5naXRpZ25vcmUuLi4pIGJlZm9yZSBuZXcgdGVzdHMgaW1wb3J0LgorICAgICAgICBEYW5nbGlu
ZyB0ZXN0IGV4cGVjdGF0aW9ucyBhcmUgcmVtb3ZlZCBhZnRlciB0ZXN0cyBpbXBvcnQuJworCisg
ICAgICAgIEFkZGluZyB1bml0IHRlc3QgYW5kIG1pbm9yIHJlZmFjdG9yaW5nIGZvciB0aGUgb3Ro
ZXIgdGVzdHMuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3czYy90ZXN0X2ltcG9ydGVy
LnB5OgorICAgICAgICAocGFyc2VfYXJncyk6IEFkZCAnLS1jbGVhbi1kZXN0LWRpcicgb3B0aW9u
LgorICAgICAgICAoVGVzdEltcG9ydGVyLmRvX2ltcG9ydCk6CisgICAgICAgIChUZXN0SW1wb3J0
ZXIuX2lzX2Jhc2VsaW5lKTogaGVscGVyIHJvdXRpbmUgdG8gY2FwdHVyZSAtZXhwZWN0ZWQudHh0
IGZpbGVzLgorICAgICAgICAoVGVzdEltcG9ydGVyKToKKyAgICAgICAgKFRlc3RJbXBvcnRlci5f
c2hvdWxkX25vdF9rZWVwX3doZW5faW1wb3J0aW5nKTogaGVscGVyIHJvdXRpbmUgdG8gZmlsdGVy
IGZpbGVzIHRoYXQgc2hvdWxkIG5vdCBiZSBjbGVhbmVkIGJlZm9yZSBpbXBvcnRpbmcuCisgICAg
ICAgIChUZXN0SW1wb3J0ZXIuY2xlYW5fZGVzdGluYXRpb25fZGlyZWN0b3J5KToKKyAgICAgICAg
KFRlc3RJbXBvcnRlci5yZW1vdmVfZGFuZ2xpbmdfZXhwZWN0YXRpb25zKToKKyAgICAgICAgKiBT
Y3JpcHRzL3dlYmtpdHB5L3czYy90ZXN0X2ltcG9ydGVyX3VuaXR0ZXN0LnB5OgorICAgICAgICAo
VGVzdEltcG9ydGVyVGVzdC5fcGFyc2Vfb3B0aW9ucyk6CisgICAgICAgIChUZXN0SW1wb3J0ZXJU
ZXN0LnRlc3RfaW1wb3J0X2Rpcl93aXRoX25vX3Rlc3RzX2FuZF9ub19oZyk6CisgICAgICAgIChU
ZXN0SW1wb3J0ZXJUZXN0LnRlc3RfaW1wb3J0X2Rpcl93aXRoX25vX3Rlc3RzKToKKyAgICAgICAg
KFRlc3RJbXBvcnRlclRlc3QudGVzdF9pbXBvcnRfZGlyX3dpdGhfZW1wdHlfaW5pdF9weSk6Cisg
ICAgICAgICh0ZXN0X2NsZWFuX2RpcmVjdG9yeV9vcHRpb24pOgorCiAyMDE2LTAxLTA0ICBDc2Fi
YSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0VGTF0gQnVtcCBF
RkwgdmVyc2lvbiB0byAxLjE2LjEKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dzNjL3Rlc3RfaW1wb3J0ZXIucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3czYy90ZXN0X2lt
cG9ydGVyLnB5CmluZGV4IDRhMjZmZjc4MWM2NzE4ZWRhMzNlNTJkY2IwMzJhZGM2OTJjMDlhMTIu
LjNhNDFkY2JiZWVjNmY1M2Y0NGVmY2UwMjE2OWUyOWVlYjM0ZmIxYjYgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvdzNjL3Rlc3RfaW1wb3J0ZXIucHkKKysrIGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS93M2MvdGVzdF9pbXBvcnRlci5weQpAQCAtMTQ3LDYgKzE0Nyw5IEBAIGRl
ZiBwYXJzZV9hcmdzKGFyZ3MpOgogICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0taW1wb3J0LWFs
bCcsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGRlZmF1bHQ9RmFsc2UsCiAgICAgICAgICBoZWxwPSdJ
Z25vcmUgdGhlIEltcG9ydEV4cGVjdGF0aW9ucyBmaWxlLiBBbGwgdGVzdHMgd2lsbCBiZSBpbXBv
cnRlZC4gVGhpcyBvcHRpb24gb25seSBhcHBsaWVzIHdoZW4gdGVzdHMgYXJlIGRvd25sb2FkZWQg
ZnJvbSBXM0MgcmVwb3NpdG9yeScpCiAKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWNsZWFu
LWRlc3QtZGlyJywgYWN0aW9uPSdzdG9yZV90cnVlJywgZGVzdD0nY2xlYW5fZGVzdGluYXRpb25f
ZGlyZWN0b3J5JywgZGVmYXVsdD1GYWxzZSwKKyAgICAgICAgIGhlbHA9J0NsZWFuIGRlc3RpbmF0
aW9uIGRpcmVjdG9yeS4gQWxsIGZpbGVzIGluIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3Rvcnkgd2ls
bCBiZSBkZWxldGVkIGV4Y2VwdCBmb3IgV2ViS2l0IHNwZWNpZmljIGZpbGVzICh0ZXN0IGV4cGVj
dGF0aW9ucywgLmdpdGlnbm9yZS4uLikgYmVmb3JlIG5ldyB0ZXN0cyBpbXBvcnQuIERhbmdsaW5n
IHRlc3QgZXhwZWN0YXRpb25zIChleHBlY3RhdGlvbiBmaWxlIHRoYXQgaXMgbm8gbG9uZ2VyIHJl
bGF0ZWQgdG8gYSB0ZXN0KSBhcmUgcmVtb3ZlZCBhZnRlciB0ZXN0cyBpbXBvcnQuJykKKwogICAg
IG9wdGlvbnMsIGFyZ3MgPSBwYXJzZXIucGFyc2Vfa25vd25fYXJncyhhcmdzKQogICAgIGlmIGxl
bihhcmdzKSA+IDE6CiAgICAgICAgIHBhcnNlci5lcnJvcignSW5jb3JyZWN0IG51bWJlciBvZiBh
cmd1bWVudHMnKQpAQCAtMTg1LDE0ICsxODgsMjAgQEAgY2xhc3MgVGVzdEltcG9ydGVyKG9iamVj
dCk6CiAgICAgICAgICAgICBzZWxmLmZpbGVzeXN0ZW0ubWF5YmVfbWFrZV9kaXJlY3Rvcnkoc2Vs
Zi5zb3VyY2VfZGlyZWN0b3J5KQogICAgICAgICAgICAgc2VsZi50ZXN0X2Rvd25sb2FkZXIoKS5k
b3dubG9hZF90ZXN0cyhzZWxmLnNvdXJjZV9kaXJlY3RvcnksIHNlbGYub3B0aW9ucy50ZXN0X3Bh
dGhzKQogCi0gICAgICAgIGlmIG5vdCBzZWxmLm9wdGlvbnMudGVzdF9wYXRocyBvciBzZWxmLl9p
bXBvcnRpbmdfZG93bmxvYWRlZF90ZXN0czoKLSAgICAgICAgICAgIHNlbGYuZmluZF9pbXBvcnRh
YmxlX3Rlc3RzKHNlbGYuc291cmNlX2RpcmVjdG9yeSkKLSAgICAgICAgZWxzZToKLSAgICAgICAg
ICAgIGZvciB0ZXN0X3BhdGggaW4gc2VsZi5vcHRpb25zLnRlc3RfcGF0aHM6Ci0gICAgICAgICAg
ICAgICAgc2VsZi5maW5kX2ltcG9ydGFibGVfdGVzdHMoc2VsZi5maWxlc3lzdGVtLmpvaW4oc2Vs
Zi5zb3VyY2VfZGlyZWN0b3J5LCB0ZXN0X3BhdGgpKQorICAgICAgICB0ZXN0X3BhdGhzID0gc2Vs
Zi5vcHRpb25zLnRlc3RfcGF0aHMgaWYgc2VsZi5vcHRpb25zLnRlc3RfcGF0aHMgZWxzZSBbdGVz
dF9yZXBvc2l0b3J5WyduYW1lJ10gZm9yIHRlc3RfcmVwb3NpdG9yeSBpbiBzZWxmLnRlc3RfZG93
bmxvYWRlcigpLnRlc3RfcmVwb3NpdG9yaWVzXQorICAgICAgICBmb3IgdGVzdF9wYXRoIGluIHRl
c3RfcGF0aHM6CisgICAgICAgICAgICBzZWxmLmZpbmRfaW1wb3J0YWJsZV90ZXN0cyhzZWxmLmZp
bGVzeXN0ZW0uam9pbihzZWxmLnNvdXJjZV9kaXJlY3RvcnksIHRlc3RfcGF0aCkpCisKKyAgICAg
ICAgaWYgc2VsZi5vcHRpb25zLmNsZWFuX2Rlc3RpbmF0aW9uX2RpcmVjdG9yeToKKyAgICAgICAg
ICAgIGZvciB0ZXN0X3BhdGggaW4gdGVzdF9wYXRoczoKKyAgICAgICAgICAgICAgICBzZWxmLmNs
ZWFuX2Rlc3RpbmF0aW9uX2RpcmVjdG9yeSh0ZXN0X3BhdGgpCiAKICAgICAgICAgc2VsZi5pbXBv
cnRfdGVzdHMoKQogCisgICAgICAgIGlmIHNlbGYub3B0aW9ucy5jbGVhbl9kZXN0aW5hdGlvbl9k
aXJlY3Rvcnk6CisgICAgICAgICAgICBmb3IgdGVzdF9wYXRoIGluIHRlc3RfcGF0aHM6CisgICAg
ICAgICAgICAgICAgc2VsZi5yZW1vdmVfZGFuZ2xpbmdfZXhwZWN0YXRpb25zKHRlc3RfcGF0aCkK
KwogICAgICAgICBpZiBzZWxmLl9pbXBvcnRpbmdfZG93bmxvYWRlZF90ZXN0czoKICAgICAgICAg
ICAgIHNlbGYuZ2VuZXJhdGVfZ2l0X3N1Ym1vZHVsZXNfZGVzY3JpcHRpb25fZm9yX2FsbF9yZXBv
c2l0b3JpZXMoKQogCkBAIC0yMjAsNiArMjI5LDI5IEBAIGNsYXNzIFRlc3RJbXBvcnRlcihvYmpl
Y3QpOgogICAgICAgICAgICAgcmV0dXJuIG5vdCBmaWxlbmFtZSA9PSAnLmh0YWNjZXNzJwogICAg
ICAgICByZXR1cm4gRmFsc2UKIAorICAgIGRlZiBfaXNfYmFzZWxpbmUoc2VsZiwgZmlsZXN5c3Rl
bSwgZGlybmFtZSwgZmlsZW5hbWUpOgorICAgICAgICByZXR1cm4gZmlsZW5hbWUuZW5kc3dpdGgo
Jy1leHBlY3RlZC50eHQnKQorCisgICAgZGVmIF9zaG91bGRfcmVtb3ZlX2JlZm9yZV9pbXBvcnRp
bmcoc2VsZiwgZmlsZXN5c3RlbSwgZGlybmFtZSwgZmlsZW5hbWUpOgorICAgICAgICBpZiBzZWxm
Ll9pc19iYXNlbGluZShmaWxlc3lzdGVtLCBkaXJuYW1lLCBmaWxlbmFtZSk6CisgICAgICAgICAg
ICByZXR1cm4gRmFsc2UKKyAgICAgICAgaWYgZmlsZW5hbWUuc3RhcnRzd2l0aCgiLiIpOgorICAg
ICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYgY2xl
YW5fZGVzdGluYXRpb25fZGlyZWN0b3J5KHNlbGYsIGZpbGVuYW1lKToKKyAgICAgICAgZGlyZWN0
b3J5ID0gc2VsZi5maWxlc3lzdGVtLmpvaW4oc2VsZi5kZXN0aW5hdGlvbl9kaXJlY3RvcnksIGZp
bGVuYW1lKQorICAgICAgICBmb3IgcmVsYXRpdmVfcGF0aCBpbiBzZWxmLmZpbGVzeXN0ZW0uZmls
ZXNfdW5kZXIoZGlyZWN0b3J5LCBmaWxlX2ZpbHRlcj1zZWxmLl9zaG91bGRfcmVtb3ZlX2JlZm9y
ZV9pbXBvcnRpbmcpOgorICAgICAgICAgICAgc2VsZi5maWxlc3lzdGVtLnJlbW92ZShzZWxmLmZp
bGVzeXN0ZW0uam9pbihkaXJlY3RvcnksIHJlbGF0aXZlX3BhdGgpKQorCisgICAgZGVmIHJlbW92
ZV9kYW5nbGluZ19leHBlY3RhdGlvbnMoc2VsZiwgZmlsZW5hbWUpOgorICAgICAgICAjRklYTUU6
IENsZWFuIGFsc28gdGhlIGV4cGVjdGVkIGZpbGVzIHN0b3JlZCBpbiBhbGwgcGxhdGZvcm0gc3Bl
Y2lmaWMgZm9sZGVycy4KKyAgICAgICAgZGlyZWN0b3J5ID0gc2VsZi5maWxlc3lzdGVtLmpvaW4o
c2VsZi5kZXN0aW5hdGlvbl9kaXJlY3RvcnksIGZpbGVuYW1lKQorICAgICAgICBmb3IgcmVsYXRp
dmVfcGF0aCBpbiBzZWxmLmZpbGVzeXN0ZW0uZmlsZXNfdW5kZXIoZGlyZWN0b3J5LCBmaWxlX2Zp
bHRlcj1zZWxmLl9pc19iYXNlbGluZSk6CisgICAgICAgICAgICBwYXRoID0gc2VsZi5maWxlc3lz
dGVtLmpvaW4oZGlyZWN0b3J5LCByZWxhdGl2ZV9wYXRoKQorICAgICAgICAgICAgaWYgc2VsZi5m
aWxlc3lzdGVtLmdsb2IocGF0aC5yZXBsYWNlKCctZXhwZWN0ZWQudHh0JywgJyonKSkgPT0gW3Bh
dGhdOgorICAgICAgICAgICAgICAgIHNlbGYuZmlsZXN5c3RlbS5yZW1vdmUocGF0aCkKKwogICAg
IGRlZiBmaW5kX2ltcG9ydGFibGVfdGVzdHMoc2VsZiwgZGlyZWN0b3J5KToKICAgICAgICAgZGVm
IHNob3VsZF9rZWVwX3N1YmRpcihmaWxlc3lzdGVtLCBwYXRoKToKICAgICAgICAgICAgIGlmIHNl
bGYuX2ltcG9ydGluZ19kb3dubG9hZGVkX3Rlc3RzOgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS93M2MvdGVzdF9pbXBvcnRlcl91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdzNjL3Rlc3RfaW1wb3J0ZXJfdW5pdHRlc3QucHkKaW5kZXggODgwZmU0ZGFiMjI2
NmU2MDM5ODY1MjVmMjVhNTQzMTZkMThhZWI3Zi4uY2UyM2E2MzZjZDRiMjhmYTFjMmE1ZDYwYWFi
Nzk3ZDkwNjRmZjk4YyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS93M2MvdGVz
dF9pbXBvcnRlcl91bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3czYy90
ZXN0X2ltcG9ydGVyX3VuaXR0ZXN0LnB5CkBAIC03MCwxMiArNzAsMTYgQEAgRkFLRV9SRVBPU0lU
T1JZID0gewogCiBjbGFzcyBUZXN0SW1wb3J0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIAor
ICAgIGRlZiBfcGFyc2Vfb3B0aW9ucyhzZWxmLCBhcmdzKToKKyAgICAgICAgb3B0aW9ucywgYXJn
cyA9IHBhcnNlX2FyZ3MoYXJncykKKyAgICAgICAgcmV0dXJuIG9wdGlvbnMKKwogICAgIGRlZiB0
ZXN0X2ltcG9ydF9kaXJfd2l0aF9ub190ZXN0c19hbmRfbm9faGcoc2VsZik6CiAgICAgICAgIGhv
c3QgPSBNb2NrSG9zdCgpCiAgICAgICAgIGhvc3QuZXhlY3V0aXZlID0gTW9ja0V4ZWN1dGl2ZTIo
ZXhjZXB0aW9uPU9TRXJyb3IoKSkKICAgICAgICAgaG9zdC5maWxlc3lzdGVtID0gTW9ja0ZpbGVT
eXN0ZW0oZmlsZXM9RkFLRV9GSUxFUykKIAotICAgICAgICBpbXBvcnRlciA9IFRlc3RJbXBvcnRl
cihob3N0LCBGQUtFX1NPVVJDRV9ESVIsIG9wdHBhcnNlLlZhbHVlcyh7Im92ZXJ3cml0ZSI6IEZh
bHNlLCAnZGVzdGluYXRpb24nOiAndzNjJywgJ3Rlc3RfcGF0aHMnOiBbRkFLRV9URVNUX1BBVEhd
fSkpCisgICAgICAgIGltcG9ydGVyID0gVGVzdEltcG9ydGVyKGhvc3QsIEZBS0VfU09VUkNFX0RJ
Uiwgc2VsZi5fcGFyc2Vfb3B0aW9ucyhbJy1uJywgJy1kJywgJ3czYycsICctdCcsIEZBS0VfVEVT
VF9QQVRIXSkpCiAKICAgICAgICAgb2MgPSBPdXRwdXRDYXB0dXJlKCkKICAgICAgICAgb2MuY2Fw
dHVyZV9vdXRwdXQoKQpAQCAtODksNyArOTMsNyBAQCBjbGFzcyBUZXN0SW1wb3J0ZXJUZXN0KHVu
aXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgaG9zdC5leGVjdXRpdmUgPSBNb2NrRXhlY3V0aXZl
MihleGNlcHRpb249U2NyaXB0RXJyb3IoImFib3J0OiBubyByZXBvc2l0b3J5IGZvdW5kIGluICcv
Vm9sdW1lcy9Tb3VyY2Uvc3JjL3drL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdzNjJyAoLmhnIG5v
dCBmb3VuZCkhIikpCiAgICAgICAgIGhvc3QuZmlsZXN5c3RlbSA9IE1vY2tGaWxlU3lzdGVtKGZp
bGVzPUZBS0VfRklMRVMpCiAKLSAgICAgICAgaW1wb3J0ZXIgPSBUZXN0SW1wb3J0ZXIoaG9zdCwg
RkFLRV9TT1VSQ0VfRElSLCBvcHRwYXJzZS5WYWx1ZXMoeyJvdmVyd3JpdGUiOiBGYWxzZSwgJ2Rl
c3RpbmF0aW9uJzogJ3czYycsICd0ZXN0X3BhdGhzJzogW0ZBS0VfVEVTVF9QQVRIXX0pKQorICAg
ICAgICBpbXBvcnRlciA9IFRlc3RJbXBvcnRlcihob3N0LCBGQUtFX1NPVVJDRV9ESVIsIHNlbGYu
X3BhcnNlX29wdGlvbnMoWyctbicsICctZCcsICd3M2MnLCAnLXQnLCBGQUtFX1RFU1RfUEFUSF0p
KQogICAgICAgICBvYyA9IE91dHB1dENhcHR1cmUoKQogICAgICAgICBvYy5jYXB0dXJlX291dHB1
dCgpCiAgICAgICAgIHRyeToKQEAgLTEwNiw3ICsxMTAsNyBAQCBjbGFzcyBUZXN0SW1wb3J0ZXJU
ZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKICAgICAg
ICAgaG9zdC5maWxlc3lzdGVtID0gTW9ja0ZpbGVTeXN0ZW0oZmlsZXM9RkFLRV9GSUxFUykKIAot
ICAgICAgICBpbXBvcnRlciA9IFRlc3RJbXBvcnRlcihob3N0LCBGQUtFX1NPVVJDRV9ESVIsIG9w
dHBhcnNlLlZhbHVlcyh7Im92ZXJ3cml0ZSI6IEZhbHNlLCAnZGVzdGluYXRpb24nOiAndzNjJywg
J3Rlc3RfcGF0aHMnOiBbJy90ZXN0cy9jc3N3ZyddfSkpCisgICAgICAgIGltcG9ydGVyID0gVGVz
dEltcG9ydGVyKGhvc3QsIEZBS0VfU09VUkNFX0RJUiwgc2VsZi5fcGFyc2Vfb3B0aW9ucyhbJy1u
JywgJy1kJywgJ3czYycsICctdCcsICcvdGVzdHMvY3Nzd2cnXSkpCiAgICAgICAgIGltcG9ydGVy
LmRvX2ltcG9ydCgpCiAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3RlbS5l
eGlzdHMoIi9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3RzL3czYy90ZXN0MS9fX2luaXRfXy5weSIp
KQpAQCAtMTg1LDUgKzE4OSwyOSBAQCBjbGFzcyBUZXN0SW1wb3J0ZXJUZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlKToKICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShmcy5leGlzdHMoJy9tb2NrLWNoZWNr
b3V0L0xheW91dFRlc3RzL3czYy9zdHJlYW1zLWFwaS9yZWZlcmVuY2UtaW1wbGVtZW50YXRpb24v
d2ViLXBsYXRmb3JtLXRlc3RzL3Rlc3QuaHRtbCcpKQogICAgICAgICBzZWxmLmFzc2VydFRydWUo
ZnMuZXhpc3RzKCcvbW9jay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvc3RyZWFtcy1hcGkvdGVz
dC5odG1sJykpCiAKKyAgICBkZWYgdGVzdF9jbGVhbl9kaXJlY3Rvcnlfb3B0aW9uKHNlbGYpOgor
ICAgICAgICBGQUtFX0ZJTEVTID0geworICAgICAgICAgICAgJy9tb2NrLWNoZWNrb3V0L0xheW91
dFRlc3RzL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvLmdpdGF0dHJpYnV0ZXMnOiAnLTEnLAorICAg
ICAgICAgICAgJy9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3RzL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvLmdpdGlnbm9yZSc6ICctMScsCisgICAgICAgICAgICAnL21vY2stY2hlY2tvdXQvTGF5b3V0
VGVzdHMvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy8uc3ZuL3djLmRiJzogJzAnLAorICAgICAgICAg
ICAgJy9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3RzL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvb2xk
LXRlc3QuaHRtbCc6ICcxJywKKyAgICAgICAgICAgICcvbW9jay1jaGVja291dC9MYXlvdXRUZXN0
cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL29sZC10ZXN0LWV4cGVjdGVkLnR4dCc6ICcyJywKKyAg
ICAgICAgICAgICcvbW9jay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2V4aXN0aW5nLXRlc3QuaHRtbCc6ICczJywKKyAgICAgICAgICAgICcvbW9jay1jaGVja291
dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2V4aXN0aW5nLXRlc3QtZXhwZWN0
ZWQudHh0JzogJzQnLAorICAgICAgICAgICAgJy9tb2NrLWNoZWNrb3V0L1dlYktpdEJ1aWxkL3cz
Yy10ZXN0cy93ZWItcGxhdGZvcm0tdGVzdHMvZXhpc3RpbmctdGVzdC5odG1sJzogJzUnLAorICAg
ICAgICAgICAgJy9tb2NrLWNoZWNrb3V0L1dlYktpdEJ1aWxkL3czYy10ZXN0cy9jc3N3Zy10ZXN0
cy90ZXN0Lmh0bWwnOiAnMScsCisgICAgICAgIH0KKworICAgICAgICBGQUtFX0ZJTEVTLnVwZGF0
ZShGQUtFX1JFUE9TSVRPUlkpCisKKyAgICAgICAgZnMgPSBzZWxmLmltcG9ydF9kb3dubG9hZGVk
X3Rlc3RzKFsnLS1uby1mZXRjaCcsICctLWltcG9ydC1hbGwnLCAnLWQnLCAndzNjJywgJy0tY2xl
YW4tZGVzdC1kaXInXSwgRkFLRV9GSUxFUykKKworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZz
LmV4aXN0cygnL21vY2stY2hlY2tvdXQvTGF5b3V0VGVzdHMvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9vbGQtdGVzdC5odG1sJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZnMuZXhpc3RzKCcv
bW9jay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL29sZC10ZXN0
LWV4cGVjdGVkLnR4dCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZnMuZXhpc3RzKCcvbW9j
ay1jaGVja291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2V4aXN0aW5nLXRl
c3QuaHRtbCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZnMuZXhpc3RzKCcvbW9jay1jaGVj
a291dC9MYXlvdXRUZXN0cy93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2V4aXN0aW5nLXRlc3QtZXhw
ZWN0ZWQudHh0JykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmcy5leGlzdHMoJy9tb2NrLWNo
ZWNrb3V0L0xheW91dFRlc3RzL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvLmdpdGF0dHJpYnV0ZXMn
KSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZzLmV4aXN0cygnL21vY2stY2hlY2tvdXQvTGF5
b3V0VGVzdHMvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy8uZ2l0aWdub3JlJykpCisgICAgICAgIHNl
bGYuYXNzZXJ0VHJ1ZShmcy5leGlzdHMoJy9tb2NrLWNoZWNrb3V0L0xheW91dFRlc3RzL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvLnN2bicpKQogCiAgICAgIyBGSVhNRTogTmVlZHMgbW9yZSB0ZXN0
cy4K
</data>

          </attachment>
      

    </bug>

</bugzilla>