{"object_kind":"push","event_name":"push","before":"cfba88ef58c7a28aa72b2798b143b131d83c6cd7","after":"bba2f5cbff98c886be22a5455cbabea9de826865","ref":"refs/heads/main","ref_protected":false,"checkout_sha":"bba2f5cbff98c886be22a5455cbabea9de826865","message":null,"user_id":1050,"user_name":"Beniamino Galvani","user_username":"bgalvani","user_email":"","user_avatar":"https://gitlab.freedesktop.org/uploads/-/system/user/avatar/1050/avatar.png","project_id":411,"project":{"id":411,"name":"NetworkManager","description":"NetworkManager — network management daemon","web_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager","avatar_url":"https://gitlab.freedesktop.org/uploads/-/system/project/avatar/411/nm_logo.png","git_ssh_url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","git_http_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git","namespace":"NetworkManager","visibility_level":20,"path_with_namespace":"NetworkManager/NetworkManager","default_branch":"main","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager","url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","ssh_url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","http_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git"},"commits":[{"id":"243c32a1517f37989f3d28aea38e78d5f8bc913e","message":"core: rename NM_UTILS_ERROR_CONNECTION_AVAILABLE_* to _UNAVAILABLE_*\n\nThese error codes describe why a connection is *unavailable* for a\ndevice, not why it is available, so rename them accordingly. Also\nrename the TEMPORARY code to OTHER, since it is used for reasons\nthat are not necessarily temporary.\n\nThis is a pure rename with no behavioral change; the relative order\nof the enum values is preserved.\n","title":"core: rename NM_UTILS_ERROR_CONNECTION_AVAILABLE_* to _UNAVAILABLE_*","timestamp":"2026-07-24T14:04:25+00:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/243c32a1517f37989f3d28aea38e78d5f8bc913e","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["src/core/devices/adsl/nm-device-adsl.c","src/core/devices/bluetooth/nm-device-bt.c","src/core/devices/nm-device-bridge.c","src/core/devices/nm-device-ethernet.c","src/core/devices/nm-device-generic.c","src/core/devices/nm-device-geneve.c","src/core/devices/nm-device-infiniband.c","src/core/devices/nm-device-ip-tunnel.c","src/core/devices/nm-device-ipvlan.c","src/core/devices/nm-device-macvlan.c","src/core/devices/nm-device-ppp.c","src/core/devices/nm-device-tun.c","src/core/devices/nm-device-vlan.c","src/core/devices/nm-device-vrf.c","src/core/devices/nm-device-vxlan.c","src/core/devices/nm-device-wpan.c","src/core/devices/nm-device.c","src/core/devices/ovs/nm-device-ovs-interface.c","src/core/devices/wifi/nm-device-iwd-p2p.c","src/core/devices/wifi/nm-device-iwd.c","src/core/devices/wifi/nm-device-wifi.c","src/core/devices/wwan/nm-device-modem.c","src/core/devices/wwan/nm-modem-broadband.c","src/core/devices/wwan/nm-modem-ofono.c","src/core/devices/wwan/nm-modem.c","src/core/nm-core-utils.c","src/core/settings/nm-settings.c","src/libnm-core-impl/nm-connection.c","src/libnm-glib-aux/nm-shared-utils.h"],"removed":[]},{"id":"cfc275964a89221b35a087a0da689879642a1662","message":"core: reorder connection-unavailable error codes and add INCOMPATIBLE_NAME\n\nThe relative order of NM_UTILS_ERROR_CONNECTION_UNAVAILABLE_* codes\ndetermines which error message the manager reports when no device\ncan activate a profile: it picks the error from the device with the\nhighest code, on the assumption that a higher code means the device\ngot further in the compatibility/availability checks.\n\nHowever, \"mismatching interface name\" was using the _OTHER code,\nwhich ranks higher than _STRICTLY_UNMANAGED_DEVICE. As a result, if a\nconnection bound to eth0 (via connection.interface-name) was\nactivated while eth0 was strictly unmanaged, and another device eth1\nwas present, the reported error wrongly referenced eth1's \"mismatching\ninterface name\" instead of eth0's \"device is strictly unmanaged\",\nbecause eth1's error code outranked eth0's.\n\nFix this by adding a new lowest-priority code,\nINCOMPATIBLE_NAME, for interface name mismatches, since a name\nmismatch is the clearest signal that a device is simply the wrong\none. Also reorder the other codes so that DISALLOWED ranks below\nSTRICTLY_UNMANAGED_DEVICE and UNMANAGED_DEVICE, since a device\nblocked by configuration policy didn't even get past the\ncompatibility check. The full order from lowest to highest priority\nis now:\n\n INCOMPATIBLE_NAME, INCOMPATIBLE, DISALLOWED,\n STRICTLY_UNMANAGED_DEVICE, UNMANAGED_DEVICE, OTHER\n\nWhile at it, use INCOMPATIBLE instead of OTHER for match.interface-name\nand match.driver mismatches, consistent with match.path, since these\nare also \"wrong device\" signals rather than a generic unavailability\nreason.\n","title":"core: reorder connection-unavailable error codes and add INCOMPATIBLE_NAME","timestamp":"2026-07-24T14:04:25+00:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/cfc275964a89221b35a087a0da689879642a1662","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["src/core/devices/nm-device.c","src/libnm-glib-aux/nm-shared-utils.h"],"removed":[]},{"id":"77b167fde5e5c9ed1822ed480a18d615a98192f7","message":"core: reorder connection-availability checks to match error code priority\n\nReorder the checks in check_connection_compatible() and\n_nm_device_check_connection_available() so that checks returning lower\nerror codes run first. This ensures a device's error code reflects how\nfar it got in the checking process.\n\nIn check_connection_compatible(), move the interface name check to the\nvery first position (returns INCOMPATIBLE_NAME, the lowest code), followed\nby the connection type check, match.* checks, allowed-connections, and\nfinally SR-IOV.\n\nIn _nm_device_check_connection_available(), move the compatibility check\n(nm_device_check_connection_compatible) before the managed/unmanaged state\nchecks. This way, a device that is compatible but unmanaged returns a\nhigher code than a device that is fundamentally incompatible.\n","title":"core: reorder connection-availability checks to match error code priority","timestamp":"2026-07-24T14:04:25+00:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/77b167fde5e5c9ed1822ed480a18d615a98192f7","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["NEWS","src/core/devices/nm-device.c"],"removed":[]},{"id":"bba2f5cbff98c886be22a5455cbabea9de826865","message":"merge: branch 'bg/fix-unmanaged-message'\n\ncore: return more meaningful errors when a compatible device for activation is not found\n\nhttps://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2470","title":"merge: branch 'bg/fix-unmanaged-message'","timestamp":"2026-07-24T14:20:40+00:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/bba2f5cbff98c886be22a5455cbabea9de826865","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["NEWS","src/core/devices/adsl/nm-device-adsl.c","src/core/devices/bluetooth/nm-device-bt.c","src/core/devices/nm-device-bridge.c","src/core/devices/nm-device-ethernet.c","src/core/devices/nm-device-generic.c","src/core/devices/nm-device-geneve.c","src/core/devices/nm-device-infiniband.c","src/core/devices/nm-device-ip-tunnel.c","src/core/devices/nm-device-ipvlan.c","src/core/devices/nm-device-macvlan.c","src/core/devices/nm-device-ppp.c","src/core/devices/nm-device-tun.c","src/core/devices/nm-device-vlan.c","src/core/devices/nm-device-vrf.c","src/core/devices/nm-device-vxlan.c","src/core/devices/nm-device-wpan.c","src/core/devices/nm-device.c","src/core/devices/ovs/nm-device-ovs-interface.c","src/core/devices/wifi/nm-device-iwd-p2p.c","src/core/devices/wifi/nm-device-iwd.c","src/core/devices/wifi/nm-device-wifi.c","src/core/devices/wwan/nm-device-modem.c","src/core/devices/wwan/nm-modem-broadband.c","src/core/devices/wwan/nm-modem-ofono.c","src/core/devices/wwan/nm-modem.c","src/core/nm-core-utils.c","src/core/settings/nm-settings.c","src/libnm-core-impl/nm-connection.c","src/libnm-glib-aux/nm-shared-utils.h"],"removed":[]}],"total_commits_count":4,"push_options":{},"repository":{"name":"NetworkManager","url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","description":"NetworkManager — network management daemon","homepage":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager","git_http_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","visibility_level":20}}