Skip to content

Commit eaea4da

Browse files
authored
Add and use Qt Releasing swift-nav custom 5.15.2.2 wheels fixing intermittent crashes (#594)
1 parent a779a37 commit eaea4da

10 files changed

+33
-9
lines changed

Makefile.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -297,11 +297,11 @@ exec --fail-on-error tar -xvf py39.tar
297297
[tasks.install-pyside-wheels]
298298
env = { USE_PYTHON = { value = "${PYTHON}", condition = { env_not_set = [
299299
"USE_PYTHON",
300-
] } }, OS_WHEEL_LABEL = { source = "${OS}", default_value = "unknown", mapping = { "linux" = "linux_x86_64", "mac" = "macosx_10_13_x86_64", "windows" = "win_amd64" } } }
300+
] } }, OS_WHEEL_LABEL = { source = "${OS}", default_value = "unknown", mapping = { "linux" = "abi3-manylinux1_x86_64", "mac" = "abi3-macosx_10_13_intel", "windows" = "none-win_amd64" } } }
301301
script_runner = "@duckscript"
302302
script = '''
303-
exec --fail-on-error ${USE_PYTHON} -m pip install pyside-wheels/shiboken2-5.15.2.1-5.15.2-cp39-cp39-${OS_WHEEL_LABEL}.whl
304-
exec --fail-on-error ${USE_PYTHON} -m pip install pyside-wheels/PySide2-5.15.2.1-5.15.2-cp39-cp39-${OS_WHEEL_LABEL}.whl
303+
exec --fail-on-error ${USE_PYTHON} -m pip install pyside-wheels/shiboken2-5.15.2.2-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-${OS_WHEEL_LABEL}.whl
304+
exec --fail-on-error ${USE_PYTHON} -m pip install pyside-wheels/PySide2-5.15.2.2-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-${OS_WHEEL_LABEL}.whl
305305
'''
306306

307307
[tasks.setup-builder]

console_backend/src/cli_options.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,6 @@ impl CliOptions {
209209
/// - `filtered_args`: The filtered args parsed via CliOptions.
210210
pub fn from_filtered_cli() -> CliOptions {
211211
let args = std::env::args();
212-
eprintln!("args {:?}", args);
213212
let mut next_args = std::env::args().skip(1);
214213
let mut filtered_args: Vec<String> = vec![];
215214
for arg in args.filter(|a| !matches!(a.as_str(), "swiftnav_console.main" | "-m" | "--")) {
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:2e11bb61fa23b4f4f9c21409fca79669381264b960f2a43fecde3c83aa6b2e4d
3+
size 145955050
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:c4fb2f77efd4bd6b8e5709b9745956b4c3b11af099e1f7c82c2e7294e88a1efd
3+
size 161070860
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:d2dbd9bb3a33426d5c28ebf1b1dce701890ad9aa9502b72696480d02389fc668
3+
size 135391994
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:af77ace317dea48fb205991b0f07318c050f9fb0b9e2b0bd6207b3bd4bf53579
3+
size 960499
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:dbf975ff992fa0c9e648e475806befa47c1be72b83bb01a3b30ebe90a8a53e9c
3+
size 977382
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:636e9fd8cd9bfc95b4c7cd9789c1427431eba2e202d41c87900cb659656f1f92
3+
size 2323150

swiftnav_console/main.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,13 @@ def join(self):
272272
@Slot() # type: ignore
273273
def receive_messages(self):
274274
if not self._receive_messages():
275-
self._thread.exit()
275+
## FIXME: HACK ALERT: # pylint: disable=fixme
276+
## We should be able call `self._thread.exit()` and the app will
277+
## cleanly shutdown after the threads exit... but there's apparently
278+
## a deadlock during shutdown so we just tear everything down for now.
279+
##
280+
## See https://swift-nav.atlassian.net/browse/CPP-772
281+
os._exit(0) # pylint: disable=protected-access
276282
else:
277283
QTimer.singleShot(0, self.receive_messages)
278284

@@ -304,7 +310,7 @@ def _receive_messages_prod(self):
304310

305311
def _process_message_buffer(self, buffer):
306312
if not buffer:
307-
print("terminating GUI loop", file=sys.stderr)
313+
print("Terminating GUI loop", file=sys.stderr, flush=True)
308314
return False
309315
Message = self._messages.Message
310316
m = Message.from_bytes(buffer)
@@ -840,11 +846,11 @@ def handle_qml_load_errors(obj, _url):
840846
app.exec_()
841847

842848
endpoint_main.shutdown()
843-
844849
backend_msg_receiver.join()
845850

846851
return 0
847852

848853

849854
if __name__ == "__main__":
850-
sys.exit(main())
855+
exit_code = main()
856+
sys.exit(exit_code)

utils/bench_runner.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@
116116
DEFAULT_JSON_FILEPATH = "fileout.json"
117117
BENCHMARK_COMMAND_ARGS = lambda file_path: f" --exit-after-close --file {file_path}"
118118
HYPERFINE_COMMAND = (
119-
lambda file_out: f'hyperfine --warmup 1 --runs 5 --cleanup "sleep 1" --show-output --export-json {file_out} '
119+
lambda file_out: f'hyperfine --warmup 1 --runs 5 --cleanup "sleep 1" --show-output --export-json {file_out}'
120120
)
121121

122122
FRONTEND_CPU_BENCHMARKS = {
@@ -272,6 +272,7 @@ def run_frontend_cpu_benchmark(executable: str):
272272
f'{HYPERFINE_COMMAND(DEFAULT_JSON_FILEPATH)} "{prepped_command} '
273273
f'{BENCHMARK_COMMAND_ARGS(bench[FILE_PATH])}"'
274274
)
275+
print(bench_command)
275276
subprocess.call(bench_command, shell=True)
276277
with open(DEFAULT_JSON_FILEPATH, "r", encoding="utf-8") as fileo:
277278
bench_result = json.load(fileo)

0 commit comments

Comments
 (0)