Hello all, CC'ing Thomas, maybe he has some idea about this. Thomas, please see [0] for the python-dbusmock failure that triggered this bug report.
Adrian Bunk [2021-02-12 16:22 +0200]: > https://ci.debian.net/data/autopkgtest/testing/amd64/p/python-dbusmock/10412779/log.gz > test_one_wifi_with_accesspoints (__main__.TestNetworkManager) ... ** > libnm:ERROR:libnm/nm-client.c:2863:_dbus_handle_obj_changed_dbus: assertion > failed: (dbobj->obj_state >= NML_DBUS_OBJ_STATE_ON_DBUS) > Bail out! libnm:ERROR:libnm/nm-client.c:2863:_dbus_handle_obj_changed_dbus: > assertion failed: (dbobj->obj_state >= NML_DBUS_OBJ_STATE_ON_DBUS) > ERROR I enabled tests on Debian unstable upstream now [1] to reproduce the failure [2]. I first ran a bisect between tags 1.28.0 (which works) and 1.30-rc1 (which is release 1.29.90, and fails). Curiously that came out as "release: bump version to 1.29.0 (development) is the first bad commit". It turns out that the 1.29.0-dev branch got based off 1.28-rc1, not 1.28.0, and `git shortlog 1.28-rc1..1.28.0` has a good deal of changes. I confirmed that 1.28-rc1 itself also has that failure (otherwise I'd really be 🤯), and so does 1.28-rc2. Then I ran a bisect between 1.28-rc2 and 1.28.0, and again it resulted in the first bad version being "release: bump version to 1.28.0" [3] (which is again trivial). I used a test script [4] which builds everything from a clean git tree, and I uninstalled network-manager from the container that I'm running this in, so there are no stale files between builds. The NM dbusmock [5] does not have any version check or other version sensitive code. So this is some weird NM build system issue that breaks something for any tag (i.e. minor/micro version in configure.ac) >= 1.28.0. Note that the 1.28-rc* tags have version 1.27.x. I grepped the NM source for '1_28' and '\b1\b.*\b28\b', but that did not spot anything obvious. I also checked for '\b1\b.*\b27\b' (just in case there is some condition on <= 1.27), but that does not hit anything relevant. So at the moment I'm totally stumped about this. Thomas, are you aware of any version sensitive magic in NM's build? Thanks! Martin [0] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=982613#5 [1] https://github.com/martinpitt/python-dbusmock/commit/8350ab65eb [2] https://github.com/martinpitt/python-dbusmock/actions/runs/565487941 [3] https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/6f32c5c10736 [4] #!/bin/sh set -eux cd /tmp/NetworkManager git clean -ffdx ./autogen.sh --with-crypto=gnutls --with-iptables=/usr/sbin/iptables make -j4 clients/cli/nmcli cd /source PATH=/tmp/NetworkManager/clients/cli:$PATH PYTHONPATH=. python3 tests/test_networkmanager.py TestNetworkManager.test_one_wifi_with_accesspoints [5] https://github.com/martinpitt/python-dbusmock/blob/master/dbusmock/templates/networkmanager.py