--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Dear release team,
I've backported four upstream fixes in networkmanager-qt for stretch that I
consider worthwhile, the corresponding debian/changelog entries are:
* Pick "Don't force logging with setFilterRules" (87273f5)
Add upstream patch as: Don-t-force-logging-with-setFilterRules.patch
* Pick "Initialise a member variable" (626e704)
Add upstream patch as: Initialise-a-member-variable.patch
* Pick "CMake: Use SYSTEM for nm-glib/nm-util includes" (ad5587c)
Add upstream patch as:
CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch
* Pick "Manager: Fix emitting deviceAdded twice when NM restarts" (a183e1f)
Add upstream patch as:
Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch
I've uploaded 5.28.0-2 with these changes, and it built successfully in all
the release architectures.
I'm attaching the corresponding debdiff.
Happy hacking,
Please unblock package networkmanager-qt
unblock networkmanager-qt/5.28.0-2
- -- System Information:
Debian Release: 9.0
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'testing'), (500, 'stable'), (50, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armhf
Kernel: Linux 4.9.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Init: systemd (via /run/systemd/system)
-----BEGIN PGP SIGNATURE-----
iQJEBAEBCgAuFiEE+JIdOnQEyG4RNSIVxxl2mbKbIyoFAljqNdAQHG1heHlAZGVi
aWFuLm9yZwAKCRDHGXaZspsjKuS8D/4uaSQdpsJgo3Qeh8Q4hH3441oiKxBPcuhQ
lMUegZZzJxTNY5idGYwRK6koto0r9DV/W3HEFebzXJS6H0Cs+EjBFT9FW6NRn9AY
3Nd0mt6kgTtnXd2MPTZitKunPoUAMrQokI7Wvy6OgQ6tokemPWXJD2GK2+BNXpP4
Gr1fR1XLq6GEs1Oc6SD3T8zSHVsKhWRmVZoeouMUFiyTVO98+nZAcJIND1B8jdEN
j9srU3dwKIQBM6clFcj73Z9q146GLHWY+XZjQXQAu20EFirN1X7uvWNxWQW+uVOz
WvNTldx8G4BPsvx3tytY8lDDM3uj0XcLXPegEHu+6tod9X+4z96H600OfguW+H0K
vuB/QuCwwHznq1Zbs9lgquDhLpPRiPXvrtTjWkhGb3i80wyWp7mPtxjUJrmQluCH
H+OxFXyn/K5rxwSzHpi52tFZKTeJ/EPXd8jzyW87uU0lasf190AHB8Scds4TLtk9
hkkuUWoPEllaUKDaLC1R0Js2DSjXA0MWxrDWHcv1hJaEDUuFiAO4SDbvQlt1AWEi
/uxGSrYiI9W59noYfaikYJy2f4+pIcUKOsgh0OSSTA6ZaKKoSv5M1/m5sWV5oURC
3PIR9kFdWA5kSZCMIYCnv43DhQiDGSxI4dMINs5sREdxWPnUkQK0O4iLMNtoJTIb
4JHSf0afjA==
=o5Nd
-----END PGP SIGNATURE-----
diff -Nru networkmanager-qt-5.28.0/debian/changelog networkmanager-qt-5.28.0/debian/changelog
--- networkmanager-qt-5.28.0/debian/changelog 2016-11-18 16:03:00.000000000 +0100
+++ networkmanager-qt-5.28.0/debian/changelog 2017-04-08 10:46:12.000000000 +0200
@@ -1,3 +1,18 @@
+networkmanager-qt (5.28.0-2) unstable; urgency=medium
+
+ * Pick "Don't force logging with setFilterRules" (87273f5)
+ Add upstream patch as: Don-t-force-logging-with-setFilterRules.patch
+ * Pick "Initialise a member variable" (626e704)
+ Add upstream patch as: Initialise-a-member-variable.patch
+ * Pick "CMake: Use SYSTEM for nm-glib/nm-util includes" (ad5587c)
+ Add upstream patch as:
+ CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch
+ * Pick "Manager: Fix emitting deviceAdded twice when NM restarts" (a183e1f)
+ Add upstream patch as:
+ Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch
+
+ -- Maximiliano Curia <maxy@debian.org> Sat, 08 Apr 2017 10:46:12 +0200
+
networkmanager-qt (5.28.0-1) unstable; urgency=medium
[ Automatic packaging ]
diff -Nru networkmanager-qt-5.28.0/debian/patches/CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch networkmanager-qt-5.28.0/debian/patches/CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch
--- networkmanager-qt-5.28.0/debian/patches/CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch 1970-01-01 01:00:00.000000000 +0100
+++ networkmanager-qt-5.28.0/debian/patches/CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch 2017-04-08 10:46:12.000000000 +0200
@@ -0,0 +1,34 @@
+From: Kevin Funk <kfunk@kde.org>
+Date: Mon, 16 Jan 2017 09:40:05 +0100
+Subject: CMake: Use SYSTEM for nm-glib/nm-util includes
+
+---
+ src/CMakeLists.txt | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index a8951ef..eb056a5 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -7,8 +7,10 @@ include_directories(
+ else()
+ include_directories(
+ ${NETWORKMANAGER_INCLUDE_DIRS}
+- ${NM-UTIL_INCLUDE_DIRS}
+- ${NM-GLIB_INCLUDE_DIRS}
++
++ SYSTEM
++ ${NM-UTIL_INCLUDE_DIRS}
++ ${NM-GLIB_INCLUDE_DIRS}
+ )
+ endif()
+
+@@ -143,7 +145,7 @@ set_target_properties(KF5NetworkManagerQt PROPERTIES VERSION ${NETWORKMANAGERQT_
+ if (${NETWORKMANAGER_VERSION} VERSION_EQUAL 1.0.0 OR ${NETWORKMANAGER_VERSION} VERSION_GREATER 1.0.0)
+ target_include_directories(KF5NetworkManagerQt PUBLIC ${NM-CORE_INCLUDE_DIRS})
+ else()
+- target_include_directories(KF5NetworkManagerQt PUBLIC ${NETWORKMANAGER_INCLUDE_DIRS} ${NM-UTIL_INCLUDE_DIRS} ${NM-GLIB_INCLUDE_DIRS})
++ target_include_directories(KF5NetworkManagerQt PUBLIC ${NETWORKMANAGER_INCLUDE_DIRS} SYSTEM PUBLIC ${NM-UTIL_INCLUDE_DIRS} ${NM-GLIB_INCLUDE_DIRS})
+ endif()
+
+ ########### static lib for tests ###############
diff -Nru networkmanager-qt-5.28.0/debian/patches/Don-t-force-logging-with-setFilterRules.patch networkmanager-qt-5.28.0/debian/patches/Don-t-force-logging-with-setFilterRules.patch
--- networkmanager-qt-5.28.0/debian/patches/Don-t-force-logging-with-setFilterRules.patch 1970-01-01 01:00:00.000000000 +0100
+++ networkmanager-qt-5.28.0/debian/patches/Don-t-force-logging-with-setFilterRules.patch 2017-04-08 10:46:12.000000000 +0200
@@ -0,0 +1,26 @@
+From: David Rosca <nowrep@gmail.com>
+Date: Mon, 12 Dec 2016 10:15:40 +0100
+Subject: Don't force logging with setFilterRules
+
+Don't set the logging rules from inside the library, so the user
+configuration (qtlogging.ini) is respected.
+
+REVIEW: 129630
+---
+ src/manager.cpp | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/src/manager.cpp b/src/manager.cpp
+index 6565299..c523e13 100644
+--- a/src/manager.cpp
++++ b/src/manager.cpp
+@@ -90,9 +90,6 @@ NetworkManager::NetworkManagerPrivate::NetworkManagerPrivate()
+ , m_isWwanHardwareEnabled(false)
+ , m_supportedInterfaceTypes(NetworkManager::Device::UnknownType)
+ {
+- QLoggingCategory::setFilterRules(QStringLiteral("networkmanager-qt.debug = true"));
+- QLoggingCategory::setFilterRules(QStringLiteral("networkmanager-qt.warning = true"));
+-
+ connect(&iface, &OrgFreedesktopNetworkManagerInterface::DeviceAdded,
+ this, &NetworkManagerPrivate::onDeviceAdded);
+ connect(&iface, &OrgFreedesktopNetworkManagerInterface::DeviceRemoved,
diff -Nru networkmanager-qt-5.28.0/debian/patches/Initialise-a-member-variable.patch networkmanager-qt-5.28.0/debian/patches/Initialise-a-member-variable.patch
--- networkmanager-qt-5.28.0/debian/patches/Initialise-a-member-variable.patch 1970-01-01 01:00:00.000000000 +0100
+++ networkmanager-qt-5.28.0/debian/patches/Initialise-a-member-variable.patch 2017-04-08 10:46:12.000000000 +0200
@@ -0,0 +1,21 @@
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Thu, 5 Jan 2017 02:42:01 +0000
+Subject: Initialise a member variable
+
+REVIEW: 129777
+---
+ src/activeconnection.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/activeconnection.cpp b/src/activeconnection.cpp
+index 22ab7d0..d797f6f 100644
+--- a/src/activeconnection.cpp
++++ b/src/activeconnection.cpp
+@@ -41,6 +41,7 @@ NetworkManager::ActiveConnectionPrivate::ActiveConnectionPrivate(const QString &
+ #endif
+ , dhcp4Config(0)
+ , dhcp6Config(0)
++ , state(ActiveConnection::Unknown)
+ , q_ptr(q)
+ {
+ path = dbusPath;
diff -Nru networkmanager-qt-5.28.0/debian/patches/Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch networkmanager-qt-5.28.0/debian/patches/Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch
--- networkmanager-qt-5.28.0/debian/patches/Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch 1970-01-01 01:00:00.000000000 +0100
+++ networkmanager-qt-5.28.0/debian/patches/Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch 2017-04-08 10:46:12.000000000 +0200
@@ -0,0 +1,134 @@
+From: David Rosca <nowrep@gmail.com>
+Date: Fri, 17 Feb 2017 12:34:58 +0100
+Subject: Manager: Fix emitting deviceAdded twice when NM restarts
+
+Differential Revision: https://phabricator.kde.org/D4646
+---
+ autotests/managertest.cpp | 20 ++++++++++++++++++++
+ src/fakenetwork/fakenetwork.cpp | 38 ++++++++++++++++++++++++++------------
+ src/fakenetwork/fakenetwork.h | 2 ++
+ src/manager.cpp | 2 +-
+ 4 files changed, 49 insertions(+), 13 deletions(-)
+
+diff --git a/autotests/managertest.cpp b/autotests/managertest.cpp
+index 6cc2429..0759a77 100644
+--- a/autotests/managertest.cpp
++++ b/autotests/managertest.cpp
+@@ -68,6 +68,26 @@ void ManagerTest::testDevices()
+ QVERIFY(NetworkManager::networkInterfaces().isEmpty());
+ QCOMPARE(removeDeviceSpy.at(0).at(0).toString(), addedDevicePath);
+
++ addDeviceSpy.clear();
++
++ fakeNetwork->addDevice(device);
++ QVERIFY(addDeviceSpy.wait());
++ QCOMPARE(NetworkManager::networkInterfaces().count(), 1);
++ QCOMPARE(NetworkManager::networkInterfaces().first()->uni(), addDeviceSpy.at(0).at(0).toString());
++
++ addDeviceSpy.clear();
++ removeDeviceSpy.clear();
++
++ fakeNetwork->unregisterService();
++ QTRY_COMPARE(removeDeviceSpy.count(), 1);
++
++ fakeNetwork->registerService();
++ QTRY_COMPARE(addDeviceSpy.count(), 1);
++
++ // Make sure deviceAdded is emitted only once
++ addDeviceSpy.wait(100);
++ QCOMPARE(addDeviceSpy.count(), 1);
++
+ delete device;
+ }
+
+diff --git a/src/fakenetwork/fakenetwork.cpp b/src/fakenetwork/fakenetwork.cpp
+index c7a29fd..72cf479 100644
+--- a/src/fakenetwork/fakenetwork.cpp
++++ b/src/fakenetwork/fakenetwork.cpp
+@@ -46,26 +46,16 @@ FakeNetwork::FakeNetwork(QObject *parent)
+ , m_deviceCounter(0)
+ , m_settings(new Settings(this))
+ {
+- QDBusConnection::sessionBus().registerService(QLatin1Literal("org.kde.fakenetwork"));
+- QDBusConnection::sessionBus().registerObject(QLatin1Literal("/org/kde/fakenetwork"), this, QDBusConnection::ExportScriptableContents);
+- QDBusConnection::sessionBus().registerObject(QLatin1Literal("/org/kde/fakenetwork/Settings"), m_settings, QDBusConnection::ExportScriptableContents);
+-
++ registerService();
+ connect(m_settings, &Settings::connectionAdded, this, &FakeNetwork::onConnectionAdded);
+ connect(m_settings, &Settings::connectionRemoved, this, &FakeNetwork::onConnectionRemoved);
+ }
+
+ FakeNetwork::~FakeNetwork()
+ {
+- Q_FOREACH (const QDBusObjectPath & devicePath, m_devices.keys()) {
+- QDBusConnection::sessionBus().unregisterObject(devicePath.path());
+- Q_EMIT DeviceRemoved(devicePath);
+- }
++ unregisterService();
+ qDeleteAll(m_devices);
+-
+ delete m_settings;
+- QDBusConnection::sessionBus().unregisterObject(QLatin1Literal("/org/kde/fakenetwork/Settings"));
+- QDBusConnection::sessionBus().unregisterObject(QLatin1Literal("/org/kde/fakenetwork"));
+- QDBusConnection::sessionBus().unregisterService(QLatin1Literal("org.kde.fakenetwork"));
+ }
+
+ QDBusObjectPath FakeNetwork::activatingConnection() const
+@@ -199,6 +189,30 @@ void FakeNetwork::removeDevice(Device *device)
+ Q_EMIT DeviceRemoved(QDBusObjectPath(device->devicePath()));
+ }
+
++void FakeNetwork::registerService()
++{
++ QDBusConnection::sessionBus().registerService(QLatin1Literal("org.kde.fakenetwork"));
++ QDBusConnection::sessionBus().registerObject(QLatin1Literal("/org/kde/fakenetwork"), this, QDBusConnection::ExportScriptableContents);
++ QDBusConnection::sessionBus().registerObject(QLatin1Literal("/org/kde/fakenetwork/Settings"), m_settings, QDBusConnection::ExportScriptableContents);
++
++ Q_FOREACH (const QDBusObjectPath & devicePath, m_devices.keys()) {
++ QDBusConnection::sessionBus().registerObject(devicePath.path(), m_devices.value(devicePath), QDBusConnection::ExportScriptableContents);
++ Q_EMIT DeviceAdded(devicePath);
++ }
++}
++
++void FakeNetwork::unregisterService()
++{
++ Q_FOREACH (const QDBusObjectPath & devicePath, m_devices.keys()) {
++ QDBusConnection::sessionBus().unregisterObject(devicePath.path());
++ Q_EMIT DeviceRemoved(devicePath);
++ }
++
++ QDBusConnection::sessionBus().unregisterObject(QLatin1Literal("/org/kde/fakenetwork/Settings"));
++ QDBusConnection::sessionBus().unregisterObject(QLatin1Literal("/org/kde/fakenetwork"));
++ QDBusConnection::sessionBus().unregisterService(QLatin1Literal("org.kde.fakenetwork"));
++}
++
+ QDBusObjectPath FakeNetwork::ActivateConnection(const QDBusObjectPath &connection, const QDBusObjectPath &device, const QDBusObjectPath &specific_object)
+ {
+ ActiveConnection *newActiveConnection = new ActiveConnection(this);
+diff --git a/src/fakenetwork/fakenetwork.h b/src/fakenetwork/fakenetwork.h
+index 64077a9..2ade01e 100644
+--- a/src/fakenetwork/fakenetwork.h
++++ b/src/fakenetwork/fakenetwork.h
+@@ -80,6 +80,8 @@ public:
+ /* Not part of DBus interface */
+ void addDevice(Device *device);
+ void removeDevice(Device *device);
++ void registerService();
++ void unregisterService();
+
+ private Q_SLOTS:
+ void onConnectionAdded(const QDBusObjectPath &connection);
+diff --git a/src/manager.cpp b/src/manager.cpp
+index c523e13..2b16e9d 100644
+--- a/src/manager.cpp
++++ b/src/manager.cpp
+@@ -680,8 +680,8 @@ void NetworkManager::NetworkManagerPrivate::onDeviceAdded(const QDBusObjectPath
+ // qCDebug(NMQT);
+ if (!networkInterfaceMap.contains(objpath.path())) {
+ networkInterfaceMap.insert(objpath.path(), Device::Ptr());
++ Q_EMIT deviceAdded(objpath.path());
+ }
+- Q_EMIT deviceAdded(objpath.path());
+ }
+
+ void NetworkManager::NetworkManagerPrivate::onDeviceRemoved(const QDBusObjectPath &objpath)
diff -Nru networkmanager-qt-5.28.0/debian/patches/series networkmanager-qt-5.28.0/debian/patches/series
--- networkmanager-qt-5.28.0/debian/patches/series 1970-01-01 01:00:00.000000000 +0100
+++ networkmanager-qt-5.28.0/debian/patches/series 2017-04-08 10:46:12.000000000 +0200
@@ -0,0 +1,4 @@
+Don-t-force-logging-with-setFilterRules.patch
+Initialise-a-member-variable.patch
+CMake-Use-SYSTEM-for-nm-glib-nm-util-includes.patch
+Manager-Fix-emitting-deviceAdded-twice-when-NM-restarts.patch
--- End Message ---