RESOLVED FIXED 226707
Windows Python 2.7 fails to install tblib-1.7.0 due to "TypeError: environment can only contain strings"
https://bugs.webkit.org/show_bug.cgi?id=226707
Summary Windows Python 2.7 fails to install tblib-1.7.0 due to "TypeError: environmen...
Fujii Hironori
Reported 2021-06-06 22:41:08 PDT
Windows Python 2.7 fails to install tblib-1.7.0 due to "TypeError: environment can only contain strings" PS C:\home\webkit\gc> python.exe ./Tools/Scripts/run-webkit-tests --wincairo --debug Downloading setuptools-44.1.1... Installing setuptools-44.1.1... Installed setuptools-44.1.1! Downloading setuptools-scm-5.0.2... Installing setuptools-scm-5.0.2... Installed setuptools-scm-5.0.2! Downloading wheel-0.35.1... Installing wheel-0.35.1... Installed wheel-0.35.1! Downloading six-1.15.0... Installing six-1.15.0... Installed six-1.15.0! Downloading mock-3.0.5... Installing mock-3.0.5... Installed mock-3.0.5! Downloading funcsigs-1.0.2... Installing funcsigs-1.0.2... Installed funcsigs-1.0.2! Downloading fasteners-0.15.0... Installing fasteners-0.15.0... Installed fasteners-0.15.0! Downloading monotonic-1.5.0... Installing monotonic-1.5.0... Installed monotonic-1.5.0! Downloading requests-2.24.0... Installing requests-2.24.0... Installed requests-2.24.0! Downloading urllib3-1.25.10... Installing urllib3-1.25.10... Installed urllib3-1.25.10! Downloading chardet-3.0.4... Installing chardet-3.0.4... Installed chardet-3.0.4! Downloading certifi-2020.6.20... Installing certifi-2020.6.20... Installed certifi-2020.6.20! Downloading idna-2.10.0... Installing idna-2.10.0... Installed idna-2.10.0! Downloading PySocks-1.7.1... Installing PySocks-1.7.1... Installed PySocks-1.7.1! Downloading win-inet-pton-1.1.0... Installing win-inet-pton-1.1.0... Installed win-inet-pton-1.1.0! Downloading xmltodict-0.11.0... Installing xmltodict-0.11.0... Installed xmltodict-0.11.0! Downloading attrs-18.1.0... Installing attrs-18.1.0... Installed attrs-18.1.0! perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LC_ALL = "en_US.UTF-8", LC_MESSAGES = "en_US.UTF-8", LANG = "en_US.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). Using port 'wincairo-win10-wk2' Test configuration: <win10, x86_64, debug> Placing test results in C:\home\webkit\gc\WebKitBuild\Debug\bin64\layout-test-results Using Debug build Pixel tests disabled Regular timeout: 30000, slow test timeout: 150000 Command line: C:\home\webkit\gc\WebKitBuild\Debug\bin64\WebKitTestRunner.exe - Found 71450 tests; running 17972, skipping 53478. Verbose baseline search path: platform\wincairo-win10-wk2 -> platform\wincairo-win10 -> platform\wincairo-wk2 -> platform\wincairo -> platform\wk2 -> generic Baseline search path: platform\wincairo -> platform\wk2 -> generic Running 17972 tests The _NT_SYMBOL_PATH environment variable is not set. Using Microsoft Symbol Server. perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LC_ALL = "en_US.UTF-8", LC_MESSAGES = "en_US.UTF-8", LANG = "en_US.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). Running 16 WebKitTestRunners in parallel. Starting 16 workers ...Downloading tblib-1.7.0... Installing tblib-1.7.0... Failed to install tblib-1.7.0! TypeError raised: environment can only contain strings Traceback (most recent call last): File "C:\home\webkit\gc\Tools\Scripts\webkitpy\layout_tests\run_webkit_tests.py", line 92, in main run_details = run(port, options, args, stderr) File "C:\home\webkit\gc\Tools\Scripts\webkitpy\layout_tests\run_webkit_tests.py", line 487, in run run_details = manager.run(args) File "C:\home\webkit\gc\Tools\Scripts\webkitpy\layout_tests\controllers\manager.py", line 408, in run temp_initial_results, temp_retry_results, temp_enabled_pixel_tests_in_retry = self._run_test_subset(test_inputs, device_type=device_type) File "C:\home\webkit\gc\Tools\Scripts\webkitpy\layout_tests\controllers\manager.py", line 482, in _run_test_subset initial_results = self._run_tests(test_inputs, self._options.repeat_each, self._options.iterations, int(self._options.child_processes), retrying=False, device_type=device_type) File "C:\home\webkit\gc\Tools\Scripts\webkitpy\layout_tests\controllers\manager.py", line 561, in _run_tests return self._runner.run_tests(self._expectations[device_type], new_test_inputs, num_workers, retrying, device_type) File "C:\home\webkit\gc\Tools\Scripts\webkitpy\layout_tests\controllers\layout_test_runner.py", line 172, in run_tests ), teardown=teardown_shard, File "C:\home\webkit\gc\Tools\Scripts\libraries\webkitcorepy\webkitcorepy\task_pool.py", line 336, in __init__ import tblib File "C:\home\webkit\gc\Tools\Scripts\libraries\webkitcorepy\webkitcorepy\autoinstall.py", line 585, in find_module cls.install(name) File "C:\home\webkit\gc\Tools\Scripts\libraries\webkitcorepy\webkitcorepy\autoinstall.py", line 569, in install return all([to_install.install() for to_install in packages]) File "C:\home\webkit\gc\Tools\Scripts\libraries\webkitcorepy\webkitcorepy\autoinstall.py", line 315, in install stderr=setup_log, File "C:\Python27\lib\subprocess.py", line 185, in check_call retcode = call(*popenargs, **kwargs) File "C:\Python27\lib\subprocess.py", line 172, in call return Popen(*popenargs, **kwargs).wait() File "C:\Python27\lib\subprocess.py", line 394, in __init__ errread, errwrite) File "C:\Python27\lib\subprocess.py", line 644, in _execute_child startupinfo) TypeError: environment can only contain strings Stopping Web Platform Test server ... PS C:\home\webkit\gc>
Attachments
Patch (1.69 KB, patch)
2021-06-06 22:53 PDT, Fujii Hironori
no flags
Fujii Hironori
Comment 1 2021-06-06 22:43:05 PDT
WinPort.setup_crash_log_saving modifies _NT_SYMBOL_PATH env var. And, _NT_SYMBOL_PATH constrains an unicode string.
Fujii Hironori
Comment 2 2021-06-06 22:53:59 PDT
Darin Adler
Comment 3 2021-06-06 23:03:40 PDT
Comment on attachment 430712 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=430712&action=review > Tools/ChangeLog:9 > + WinCairo port is still using Python 2.7 that has ascii strings and > + unicode strings. WinPort.setup_crash_log_saving modifies Does WinCairo port need to use Python 2?
Fujii Hironori
Comment 4 2021-06-06 23:40:37 PDT
Comment on attachment 430712 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=430712&action=review >> Tools/ChangeLog:9 >> + unicode strings. WinPort.setup_crash_log_saving modifies > > Does WinCairo port need to use Python 2? Yes. We didn't finish Python 3 migration yet. We are working on it to remove Python 2 support.
Jonathan Bedard
Comment 5 2021-06-07 08:47:22 PDT
Comment on attachment 430712 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=430712&action=review >>> Tools/ChangeLog:9 >>> + unicode strings. WinPort.setup_crash_log_saving modifies >> >> Does WinCairo port need to use Python 2? > > Yes. We didn't finish Python 3 migration yet. We are working on it to remove Python 2 support. And for what it's worth, Apple's ports weren't ready for Python 3.8 until late last week
Fujii Hironori
Comment 6 2021-06-07 13:10:02 PDT
Comment on attachment 430712 [details] Patch Clearing flags on attachment: 430712 Committed r278570 (238568@main): <https://commits.webkit.org/238568@main>
Fujii Hironori
Comment 7 2021-06-07 13:10:05 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 8 2021-06-07 13:11:19 PDT
Note You need to log in before you can comment on or make changes to this bug.