Bug 1388423 - Get full rust backtraces everywhere. r?jmaher
MozReview-Commit-ID: 2Mfrpupz7As
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -920,17 +920,17 @@ define RUN_CARGO
$(if $(findstring n,$(filter-out --%, $(MAKEFLAGS))),,+)env $(environment_cleaner) $(rust_unlock_unstable) $(rustflags_override) $(sccache_wrap) \
CARGO_TARGET_DIR=$(CARGO_TARGET_DIR) \
RUSTC=$(RUSTC) \
MOZ_SRC=$(topsrcdir) \
MOZ_DIST=$(ABS_DIST) \
LIBCLANG_PATH="$(MOZ_LIBCLANG_PATH)" \
CLANG_PATH="$(MOZ_CLANG_PATH)" \
PKG_CONFIG_ALLOW_CROSS=1 \
- RUST_BACKTRACE=1 \
+ RUST_BACKTRACE=full \
MOZ_TOPOBJDIR=$(topobjdir) \
$(2) \
$(CARGO) $(1) $(cargo_build_flags)
endef
# This function is intended to be called by:
#
# $(call CARGO_BUILD,EXTRA_ENV_VAR1=X EXTRA_ENV_VAR2=Y ...)
--- a/python/mozbuild/mozbuild/mach_commands.py
+++ b/python/mozbuild/mozbuild/mach_commands.py
@@ -1384,17 +1384,17 @@ class RunProgram(MachCommandBase):
if not no_profile_option_given and setpref:
print("setpref is only supported if a profile is not specified")
return 1
extra_env = {
'MOZ_DEVELOPER_REPO_DIR': self.topsrcdir,
'MOZ_DEVELOPER_OBJ_DIR': self.topobjdir,
- 'RUST_BACKTRACE': '1',
+ 'RUST_BACKTRACE': 'full',
}
if not enable_crash_reporter:
extra_env['MOZ_CRASHREPORTER_DISABLE'] = '1'
else:
extra_env['MOZ_CRASHREPORTER'] = '1'
if disable_e10s:
--- a/testing/mozharness/mozharness/mozilla/testing/firefox_ui_tests.py
+++ b/testing/mozharness/mozharness/mozilla/testing/firefox_ui_tests.py
@@ -247,17 +247,17 @@ class FirefoxUITests(TestingMixin, VCSTo
tests = [os.path.join(dirs['abs_fxui_dir'], 'tests', test) for test in self.default_tests]
cmd.extend(tests)
# Set further environment settings
env = env or self.query_env()
env.update({'MINIDUMP_SAVE_PATH': dirs['abs_blob_upload_dir']})
if self.query_minidump_stackwalk():
env.update({'MINIDUMP_STACKWALK': self.minidump_stackwalk_path})
- env['RUST_BACKTRACE'] = '1'
+ env['RUST_BACKTRACE'] = 'full'
# If code coverage is enabled, set GCOV_PREFIX and JS_CODE_COVERAGE_OUTPUT_DIR env variables
if self.config.get('code_coverage'):
env['GCOV_PREFIX'] = self.gcov_dir
env['JS_CODE_COVERAGE_OUTPUT_DIR'] = self.jsvm_dir
if self.config['allow_software_gl_layers']:
env['MOZ_LAYERS_ALLOW_SOFTWARE_GL'] = '1'
--- a/testing/mozharness/mozharness/mozilla/testing/talos.py
+++ b/testing/mozharness/mozharness/mozilla/testing/talos.py
@@ -540,17 +540,17 @@ class Talos(TestingMixin, MercurialScrip
self.run_command([python, "--version"])
parser = TalosOutputParser(config=self.config, log_obj=self.log_obj,
error_list=TalosErrorList)
env = {}
env['MOZ_UPLOAD_DIR'] = self.query_abs_dirs()['abs_blob_upload_dir']
if not self.run_local:
env['MINIDUMP_STACKWALK'] = self.query_minidump_stackwalk()
env['MINIDUMP_SAVE_PATH'] = self.query_abs_dirs()['abs_blob_upload_dir']
- env['RUST_BACKTRACE'] = '1'
+ env['RUST_BACKTRACE'] = 'full'
if not os.path.isdir(env['MOZ_UPLOAD_DIR']):
self.mkdir_p(env['MOZ_UPLOAD_DIR'])
env = self.query_env(partial_env=env, log_level=INFO)
# adjust PYTHONPATH to be able to use talos as a python package
if 'PYTHONPATH' in env:
env['PYTHONPATH'] = self.talos_path + os.pathsep + env['PYTHONPATH']
else:
env['PYTHONPATH'] = self.talos_path
--- a/testing/mozharness/scripts/android_emulator_unittest.py
+++ b/testing/mozharness/scripts/android_emulator_unittest.py
@@ -717,17 +717,17 @@ class AndroidEmulatorTest(BlobUploadMixi
cwd = self._query_tests_dir()
except:
self.fatal("Don't know how to run --test-suite '%s'!" % self.test_suite)
env = self.query_env()
if self.query_minidump_stackwalk():
env['MINIDUMP_STACKWALK'] = self.minidump_stackwalk_path
env['MOZ_UPLOAD_DIR'] = self.query_abs_dirs()['abs_blob_upload_dir']
env['MINIDUMP_SAVE_PATH'] = self.query_abs_dirs()['abs_blob_upload_dir']
- env['RUST_BACKTRACE'] = '1'
+ env['RUST_BACKTRACE'] = 'full'
self.info("Running on %s the command %s" % (self.emulator["name"], subprocess.list2cmdline(cmd)))
self.info("##### %s log begins" % self.test_suite)
# TinderBoxPrintRe does not know about the '-debug' categories
aliases = {
'reftest-debug': 'reftest',
'jsreftest-debug': 'jsreftest',
--- a/testing/mozharness/scripts/desktop_unittest.py
+++ b/testing/mozharness/scripts/desktop_unittest.py
@@ -704,17 +704,17 @@ class DesktopUnittest(TestingMixin, Merc
parser.formatter = ref_formatter.ReftestFormatter()
if self.query_minidump_stackwalk():
env['MINIDUMP_STACKWALK'] = self.minidump_stackwalk_path
if self.query_nodejs():
env['MOZ_NODE_PATH'] = self.nodejs_path
env['MOZ_UPLOAD_DIR'] = self.query_abs_dirs()['abs_blob_upload_dir']
env['MINIDUMP_SAVE_PATH'] = self.query_abs_dirs()['abs_blob_upload_dir']
- env['RUST_BACKTRACE'] = '1'
+ env['RUST_BACKTRACE'] = 'full'
if not os.path.isdir(env['MOZ_UPLOAD_DIR']):
self.mkdir_p(env['MOZ_UPLOAD_DIR'])
if self.config['allow_software_gl_layers']:
env['MOZ_LAYERS_ALLOW_SOFTWARE_GL'] = '1'
if self.config['enable_webrender']:
env['MOZ_WEBRENDER'] = '1'
--- a/testing/mozharness/scripts/marionette.py
+++ b/testing/mozharness/scripts/marionette.py
@@ -311,17 +311,17 @@ class MarionetteTest(TestingMixin, Mercu
cmd.extend(self.query_tests_args(try_tests,
str_format_values=config_fmt_args))
env = {}
if self.query_minidump_stackwalk():
env['MINIDUMP_STACKWALK'] = self.minidump_stackwalk_path
env['MOZ_UPLOAD_DIR'] = self.query_abs_dirs()['abs_blob_upload_dir']
env['MINIDUMP_SAVE_PATH'] = self.query_abs_dirs()['abs_blob_upload_dir']
- env['RUST_BACKTRACE'] = '1'
+ env['RUST_BACKTRACE'] = 'full'
if self.config['allow_software_gl_layers']:
env['MOZ_LAYERS_ALLOW_SOFTWARE_GL'] = '1'
if self.config['enable_webrender']:
env['MOZ_WEBRENDER'] = '1'
if not os.path.isdir(env['MOZ_UPLOAD_DIR']):
self.mkdir_p(env['MOZ_UPLOAD_DIR'])
--- a/testing/mozharness/scripts/web_platform_tests.py
+++ b/testing/mozharness/scripts/web_platform_tests.py
@@ -273,17 +273,17 @@ class WebPlatformTest(TestingMixin, Merc
self._install_fonts()
parser = StructuredOutputParser(config=self.config,
log_obj=self.log_obj,
log_compact=True,
error_list=BaseErrorList + HarnessErrorList)
env = {'MINIDUMP_SAVE_PATH': dirs['abs_blob_upload_dir']}
- env['RUST_BACKTRACE'] = '1'
+ env['RUST_BACKTRACE'] = 'full'
if self.config['allow_software_gl_layers']:
env['MOZ_LAYERS_ALLOW_SOFTWARE_GL'] = '1'
if self.config['enable_webrender']:
env['MOZ_WEBRENDER'] = '1'
if self.config['headless']:
env['MOZ_HEADLESS'] = '1'
env['MOZ_HEADLESS_WIDTH'] = self.config['headless_width']