<?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>223269</bug_id>
          
          <creation_ts>2021-03-16 12:09:21 -0700</creation_ts>
          <short_desc>webKit-patch fails to upload patch with 20000 files changed due to shell limitation: Argument list too long</short_desc>
          <delta_ts>2021-03-23 12:10:12 -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>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=222964</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=214485</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="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1740102</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-03-16 12:09:21 -0700</bug_when>
    <thetext>WebKit patch fails to upload patch with 20000 files

 git show --summary |wc -l  
   22512

While large amount, it&apos;s not inconceivable.

The patch in question tried to introduce new WebGL conformance test suites, e.g. replace LayoutTests/{1.0.3,2.0.0} -&gt; {1.0.4,2.0.1}.
The WebGL conformance test suite has ~2500 testcases. WebKit generates one test driver .html and one -expected.txt for each test. 


kkinnunen@Kimmos-iMac-Pro OpenSource % Tools/Scripts/webkit-patch upload -g HEAD 
Traceback (most recent call last):
  File &quot;Tools/Scripts/webkit-patch&quot;, line 80, in &lt;module&gt;
    main()
  File &quot;Tools/Scripts/webkit-patch&quot;, line 75, in main
    WebKitPatch(os.path.abspath(__file__)).main()
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/multicommandtool.py&quot;, line 305, in main
    result = command.check_arguments_and_execute(options, args, self)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/multicommandtool.py&quot;, line 123, in check_arguments_and_execute
    return self.execute(options, args, tool) or 0
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/commands/abstractsequencedcommand.py&quot;, line 55, in execute
    self._sequence.run_and_handle_errors(tool, options, state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/commands/stepsequence.py&quot;, line 73, in run_and_handle_errors
    self._run(tool, options, state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/commands/stepsequence.py&quot;, line 67, in _run
    step(tool, options).run(state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/steps/checkstyle.py&quot;, line 66, in run
    self._tool.executive.run_and_throw_if_fail(self._tool.deprecated_port().check_webkit_style_command() + args, cwd=self._tool.scm().checkout_root)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 148, in run_and_throw_if_fail
    exit_code = self._run_command_with_teed_output(args, child_stdout, **kwargs)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 123, in _run_command_with_teed_output
    **kwargs)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 532, in popen
    result = subprocess.Popen(string_args, env=env, **kwargs)
  File &quot;/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py&quot;, line 394, in __init__
    errread, errwrite)
  File &quot;/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py&quot;, line 1047, in _execute_child
    raise child_exception
OSError: [Errno 7] Argument list too long



kkinnunen@Kimmos-iMac-Pro OpenSource % tools/Scripts/webkit-patch upload -g HEAD --ignore-style             
Traceback (most recent call last):
  File &quot;tools/Scripts/webkit-patch&quot;, line 80, in &lt;module&gt;
    main()
  File &quot;tools/Scripts/webkit-patch&quot;, line 75, in main
    WebKitPatch(os.path.abspath(__file__)).main()
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/multicommandtool.py&quot;, line 305, in main
    result = command.check_arguments_and_execute(options, args, self)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/multicommandtool.py&quot;, line 123, in check_arguments_and_execute
    return self.execute(options, args, tool) or 0
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/commands/abstractsequencedcommand.py&quot;, line 55, in execute
    self._sequence.run_and_handle_errors(tool, options, state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/commands/stepsequence.py&quot;, line 73, in run_and_handle_errors
    self._run(tool, options, state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/commands/stepsequence.py&quot;, line 67, in _run
    step(tool, options).run(state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/steps/confirmdiff.py&quot;, line 73, in run
    diff = self.cached_lookup(state, &quot;diff&quot;)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/steps/abstractstep.py&quot;, line 62, in cached_lookup
    state[key] = promise(self, state)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/tool/steps/abstractstep.py&quot;, line 52, in &lt;lambda&gt;
    &quot;diff&quot;: lambda self, state: self._tool.scm().create_patch(self._options.git_commit, changed_files=self._changed_files(state)),
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/checkout/scm/git.py&quot;, line 375, in create_patch
    return self.prepend_svn_revision(self.run(command, decode_output=False, cwd=self.checkout_root))
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/checkout/scm/scm.py&quot;, line 80, in run
    decode_output=decode_output)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 406, in run_command
    close_fds=self._should_close_fds())
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/common/system/executive.py&quot;, line 532, in popen
    result = subprocess.Popen(string_args, env=env, **kwargs)
  File &quot;/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py&quot;, line 394, in __init__
    errread, errwrite)
  File &quot;/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py&quot;, line 1047, in _execute_child
    raise child_exception
OSError: [Errno 7] Argument list too long


kkinnunen@Kimmos-iMac-Pro OpenSource % tools/Scripts/check-webkit-style  -g HEAD                
Traceback (most recent call last):
  File &quot;tools/Scripts/check-webkit-style&quot;, line 46, in &lt;module&gt;
    sys.exit(CheckWebKitStyle().main())
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/style/main.py&quot;, line 159, in main
    patch_checker.check(patch)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/webkitpy/style/patchreader.py&quot;, line 60, in check
    patch_string = string_utils.decode(patch_string, target_type=str)
  File &quot;/Users/kkinnunen/WebKit/OpenSource/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/string_utils.py&quot;, line 44, in decode
    return data.decode(encoding, errors=errors)
UnicodeDecodeError: &apos;utf-8&apos; codec can&apos;t decode byte 0x82 in position 3450534: invalid start byte</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1740110</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2021-03-16 12:17:08 -0700</bug_when>
    <thetext>We should probably break the check-webkit-style issue out into its own bug, since it has a different cause (unless we use this as an umbrella bug).

CC Jonathan just FYI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1740163</commentid>
    <comment_count>2</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-16 13:40:56 -0700</bug_when>
    <thetext>Not sure how worth fixing this issue is, we&apos;ll be moving to pull-requests in the near future, which is the architectural fix for this sort of problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1740542</commentid>
    <comment_count>3</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-03-17 01:31:32 -0700</bug_when>
    <thetext>Filed bug 223367 about the check-webkit-style, which probably is not going away.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742937</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-23 12:10:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/75748788&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>