Closed Bug 1724766 Opened 3 years ago Closed 3 years ago

`mach mochitest --debugger=devenv` fails on Windows (environment can only contain strings)

Categories

(Firefox Build System :: General, defect)

Desktop
All
defect

Tracking

(firefox93 fixed)

RESOLVED FIXED
93 Branch
Tracking Status
firefox93 --- fixed

People

(Reporter: Gijs, Assigned: mhentges)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

 0:07.95 INFO Application command: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe -debugexe c:\dev\builds\opt\dist\bin\firefox.exe -marionette --wait-for-browser -foreground -profile C:\Users\Gijs\AppData\Local\Temp\tmpu0zsk0f2.mozrunner
Traceback (most recent call last):
  File "c:/dev/builds/opt\_tests\testing\mochitest\runtests.py", line 3227, in doTests
    crashAsPass=options.crashAsPass,
  File "c:/dev/builds/opt\_tests\testing\mochitest\runtests.py", line 2488, in runApp
    debug_args=debug_args, interactive=interactive, outputTimeout=timeout
  File "c:\dev\mozilla-unified\testing/mozbase/mozrunner\mozrunner\base\browser.py", line 96, in start
    BaseRunner.start(self, *args, **kwargs)
  File "c:\dev\mozilla-unified\testing/mozbase/mozrunner\mozrunner\base\runner.py", line 142, in start
    self.process_handler = subprocess.Popen(cmd, env=encoded_env)
  File "c:\dev\mozilla-unified\third_party/python/sentry_sdk\sentry_sdk\integrations\stdlib.py", line 190, in sentry_patched_popen_init
    rv = old_popen_init(self, *a, **kw)  # type: ignore
  File "c:\mozilla-build\python3\lib\subprocess.py", line 775, in __init__
    restore_signals, start_new_session)
  File "c:\mozilla-build\python3\lib\subprocess.py", line 1178, in _execute_child
    startupinfo)
TypeError: environment can only contain strings
 0:07.96 ERROR Automation Error: Received unexpected exception while running application

Previously:

bug 1617877
bug 1614146
bug 1612579
bug 1578198
bug 1577826

etc.

Assignee: nobody → mhentges
Status: NEW → ASSIGNED

Environment variables should use their local str type.
The existing code was ensuring env vars were bytes, which is only
correct with Python 2.

I could've opted to simplify this and ensure environment variables were
always text, but I'm not confident that this code doesn't ever run
with Python 2 just yet. It is the BaseRunner after all.

Pushed by mhentges@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/808e0f497f36
Resolve Python 2->3 issue with Windows and Mochitest r=ahal
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 93 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: