This should probably be more than one branch, but it's late, and this all needs to land before 5.16 anyway.
Created attachment 86081 [details] [review] 01/10] Flag printf-ish functions with G_GNUC_PRINTF and fix resulting warnings In particular, mcd-account-manager-default could crash when migrating an account, since it would dereference arbitrary stack contents as a pointer-to-string.
Created attachment 86082 [details] [review] 02/10] Ignore /test-driver, installed by Automake 1.13
Created attachment 86083 [details] [review] 03/10] installcheck-twisted: test the just-installed MC if using a DESTDIR
Created attachment 86084 [details] [review] 04/10] Always use run-test.sh to run tests There are three modes here: - make check: run tests in ${srcdir} against MC in ${builddir} - make installcheck: run tests in ${srcdir} against MC in ${DESTDIR}${prefix} - ${mctestsdir}/twisted/run-test.sh: run tests in ${mctestsdir} against MC in ${prefix} Also simplify the last of those cases, and avoid a potential symlink attack, by requiring that the current working directory for run-test.sh is a directory controlled by us. In practice we already required that, because with-session-bus.sh creates files in the current directory. --- Yes I realise this is pretty huge.
Created attachment 86085 [details] [review] 05/10] run-mc.sh.in: set DBUS_SYSTEM_BUS_ADDRESS This is used in the "installed" case, and this change is necessary to catch up with exec-with-log.sh.in in the "uninstalled" case. We want to use the fake NetworkManager, ConnMan etc., not the real ones.
Created attachment 86086 [details] [review] 06/10] tests: write logs to MC_TEST_LOG_DIR, with latest log in `pwd` This makes the logs' location rather more obvious. Not altering MC's working directory also means the core dump (if any) comes out in tests/twisted, which makes sense, instead of tests/twisted/tools, which doesn't.
Created attachment 86087 [details] [review] 07/10] Tests: clean up all built sources
Created attachment 86088 [details] [review] 08/10] tests: cd into the directory from which we were run dbus-daemon does a chdir("/") for activated services. We want to undo that, and put our logs (and core dumps, if any) in a more obvious place.
Created attachment 86089 [details] [review] 09/10] mcd_account_self_contact_upgraded_cb: don't crash on bad timing If the account is disconnecting, we might get the callback for upgrading after we've already NULLed out self->priv->self_contact.
Created attachment 86090 [details] [review] 10/10] document MC_TEST_KEEP_TEMP
Comment on attachment 86081 [details] [review] 01/10] Flag printf-ish functions with G_GNUC_PRINTF and fix resulting warnings Review of attachment 86081 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86082 [details] [review] 02/10] Ignore /test-driver, installed by Automake 1.13 Review of attachment 86082 [details] [review]: ----------------------------------------------------------------- ++ Did I mention I hate this thing? I can no longer type "vi tes<tab>" to edit a test file.
Comment on attachment 86083 [details] [review] 03/10] installcheck-twisted: test the just-installed MC if using a DESTDIR Review of attachment 86083 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86084 [details] [review] 04/10] Always use run-test.sh to run tests Review of attachment 86084 [details] [review]: ----------------------------------------------------------------- ++ assuming distcheck passes.
Comment on attachment 86085 [details] [review] 05/10] run-mc.sh.in: set DBUS_SYSTEM_BUS_ADDRESS Review of attachment 86085 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86086 [details] [review] 06/10] tests: write logs to MC_TEST_LOG_DIR, with latest log in `pwd` Review of attachment 86086 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86087 [details] [review] 07/10] Tests: clean up all built sources Review of attachment 86087 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86088 [details] [review] 08/10] tests: cd into the directory from which we were run Review of attachment 86088 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86089 [details] [review] 09/10] mcd_account_self_contact_upgraded_cb: don't crash on bad timing Review of attachment 86089 [details] [review]: ----------------------------------------------------------------- ++
Comment on attachment 86090 [details] [review] 10/10] document MC_TEST_KEEP_TEMP Review of attachment 86090 [details] [review]: ----------------------------------------------------------------- ++
(In reply to comment #12) > Did I mention I hate this thing? I can no longer type "vi tes<tab>" to edit > a test file. We can probably move the Autotools misc into a subdirectory (I think /build-aux is traditional) via autoconf/automake directives, although we might need to bump required versions.
fixed in 5.15.1
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.