Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-proton-vpn-network-manager 
for openSUSE:Factory checked in at 2024-04-21 20:29:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-proton-vpn-network-manager (Old)
 and      
/work/SRC/openSUSE:Factory/.python-proton-vpn-network-manager.new.26366 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-proton-vpn-network-manager"

Sun Apr 21 20:29:01 2024 rev:3 rq:1169474 version:0.4.2

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-proton-vpn-network-manager/python-proton-vpn-network-manager.changes
      2024-03-25 21:20:26.388397665 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-proton-vpn-network-manager.new.26366/python-proton-vpn-network-manager.changes
   2024-04-21 20:30:25.916860077 +0200
@@ -1,0 +2,7 @@
+Sun Apr 21 08:50:59 UTC 2024 - Dirk Müller <dmuel...@suse.com>
+
+- update to 0.4.2:
+  * Update to new interface
+  * Make necessary changes to support Wireguard protocol
+
+-------------------------------------------------------------------

Old:
----
  v0.4.0.tar.gz

New:
----
  v0.4.2.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-proton-vpn-network-manager.spec ++++++
--- /var/tmp/diff_new_pack.AE9C9N/_old  2024-04-21 20:30:27.020900606 +0200
+++ /var/tmp/diff_new_pack.AE9C9N/_new  2024-04-21 20:30:27.032901047 +0200
@@ -19,7 +19,7 @@
 %define skip_python2 1
 %{?sle15_python_module_pythons}
 Name:           python-proton-vpn-network-manager
-Version:        0.4.0
+Version:        0.4.2
 Release:        0
 Summary:        Proton VPN library for NetworkManager
 License:        GPL-3.0-or-later

++++++ v0.4.0.tar.gz -> v0.4.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/debian/changelog 
new/python-proton-vpn-network-manager-0.4.2/debian/changelog
--- old/python-proton-vpn-network-manager-0.4.0/debian/changelog        
2024-02-14 15:52:48.000000000 +0100
+++ new/python-proton-vpn-network-manager-0.4.2/debian/changelog        
2024-03-06 10:28:24.000000000 +0100
@@ -1,3 +1,15 @@
+protonvpn-network-manager (0.4.2) unstable; urgency=medium
+
+  * Update to new interface
+
+ -- Alexandru Cheltuitor <alexandru.cheltui...@proton.ch>  Fri, 1 Mar 2024 
10:00:00 +0100
+
+protonvpn-network-manager (0.4.1) unstable; urgency=medium
+
+  * Make necessary changes to support Wireguard protocol
+
+ -- Alexandru Cheltuitor <alexandru.cheltui...@proton.ch>  Tue, 27 Feb 2024 
10:00:00 +0100
+
 protonvpn-network-manager (0.4.0) unstable; urgency=medium
 
   * Initialize connection with persisted parameters
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/debian/control 
new/python-proton-vpn-network-manager-0.4.2/debian/control
--- old/python-proton-vpn-network-manager-0.4.0/debian/control  2024-02-14 
15:52:48.000000000 +0100
+++ new/python-proton-vpn-network-manager-0.4.2/debian/control  2024-03-06 
10:28:24.000000000 +0100
@@ -9,4 +9,5 @@
 Package: python3-proton-vpn-network-manager
 Architecture: all
 Depends: ${python3:Depends}, ${misc:Depends}, python3-proton-core, 
python3-proton-vpn-connection, network-manager, python3-gi, gir1.2-nm-1.0
+Breaks: python3-proton-vpn-network-manager-openvpn (<< 0.0.5), 
python3-proton-vpn-network-manager-wireguard (<< 0.0.3)
 Description: Python3 ProtonVPN Network Manager Backend
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/proton/vpn/backend/linux/networkmanager/core/networkmanager.py
 
new/python-proton-vpn-network-manager-0.4.2/proton/vpn/backend/linux/networkmanager/core/networkmanager.py
--- 
old/python-proton-vpn-network-manager-0.4.0/proton/vpn/backend/linux/networkmanager/core/networkmanager.py
  2024-02-14 15:52:48.000000000 +0100
+++ 
new/python-proton-vpn-network-manager-0.4.2/proton/vpn/backend/linux/networkmanager/core/networkmanager.py
  2024-03-06 10:28:24.000000000 +0100
@@ -45,6 +45,7 @@
     To do this, this class needs to be extended so that the subclass
     initializes the NetworkManager connection appropriately.
     """
+    SIGNAL_NAME = "vpn-state-changed"
     backend = "linuxnetworkmanager"
 
     def __init__(self, *args, nm_client: NMClient = None, **kwargs):
@@ -79,7 +80,7 @@
 
         server_reachable = await tcpcheck.is_any_port_reachable(
             self._vpnserver.server_ip,
-            self._vpnserver.tcp_ports
+            self._vpnserver.openvpn_ports.tcp
         )
 
         if not server_reachable:
@@ -94,7 +95,7 @@
             
self._notify_subscribers(events.Disconnected(EventContext(connection=self)))
             return
 
-        future_connection = self._setup()  # Creates the network manager 
connection.
+        future_connection = self.setup()  # Creates the network manager 
connection.
         loop = asyncio.get_running_loop()
         try:
             connection = await loop.run_in_executor(None, 
future_connection.result)
@@ -123,8 +124,8 @@
             )
             # Start listening for vpn state changes.
             vpn_connection.connect(
-                "vpn-state-changed",
-                self._on_vpn_state_changed
+                self.SIGNAL_NAME,
+                self._on_state_changed
             )
         except GLib.GError:
             logger.exception("Error starting NetworkManager connection.")
@@ -166,7 +167,7 @@
         await self.remove_connection()
 
     # pylint: disable=unused-argument
-    def _on_vpn_state_changed(
+    def _on_state_changed(
             self, vpn_connection: NM.VpnConnection, state: int, reason: int
     ):
         """
@@ -307,8 +308,8 @@
         )
         if active_connection:
             active_connection.connect(
-                "vpn-state-changed",
-                self._on_vpn_state_changed
+                self.SIGNAL_NAME,
+                self._on_state_changed
             )
             return states.Connected(context)
 
@@ -324,7 +325,7 @@
         server_name = self._vpnserver.server_name or "Connection"
         return f"ProtonVPN {server_name}"
 
-    def _setup(self):
+    def setup(self):
         """
         Every protocol derived from this class has to override this method
         in order to have it working.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/rpmbuild/SPECS/package.spec 
new/python-proton-vpn-network-manager-0.4.2/rpmbuild/SPECS/package.spec
--- old/python-proton-vpn-network-manager-0.4.0/rpmbuild/SPECS/package.spec     
2024-02-14 15:52:48.000000000 +0100
+++ new/python-proton-vpn-network-manager-0.4.2/rpmbuild/SPECS/package.spec     
2024-03-06 10:28:24.000000000 +0100
@@ -1,5 +1,5 @@
 %define unmangled_name proton-vpn-network-manager
-%define version 0.4.0
+%define version 0.4.2
 %define release 1
 
 Prefix: %{_prefix}
@@ -33,6 +33,9 @@
 Requires: python3-proton-core
 Requires: python3-setuptools
 
+Conflicts: python3-proton-vpn-network-manager-openvpn < 0.0.5
+Conflicts: python3-proton-vpn-network-manager-wireguard < 0.0.3
+
 %{?python_disable_dependency_generator}
 
 %description
@@ -55,6 +58,12 @@
 %defattr(-,root,root)
 
 %changelog
+* Fri Mar 1 2024 Alexandru Cheltuitor <alexandru.cheltui...@proton.ch> 0.4.2
+- Update to new interface
+
+* Tue Feb 27 2024 Alexandru Cheltuitor <alexandru.cheltui...@proton.ch> 0.4.1
+- Make necessary changes to support Wireguard protocol
+
 * Wed Feb 14 2024 Josep Llaneras <josep.llane...@proton.ch> 0.4.0
 - Initialize connection with persisted parameters
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-proton-vpn-network-manager-0.4.0/setup.py 
new/python-proton-vpn-network-manager-0.4.2/setup.py
--- old/python-proton-vpn-network-manager-0.4.0/setup.py        2024-02-14 
15:52:48.000000000 +0100
+++ new/python-proton-vpn-network-manager-0.4.2/setup.py        2024-03-06 
10:28:24.000000000 +0100
@@ -4,7 +4,7 @@
 
 setup(
     name="proton-vpn-network-manager",
-    version="0.4.0",
+    version="0.4.2",
     description="Proton Technologies VPN connector for linux",
     author="Proton Technologies",
     author_email="cont...@protonmail.com",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/tests/boilerplate.py 
new/python-proton-vpn-network-manager-0.4.2/tests/boilerplate.py
--- old/python-proton-vpn-network-manager-0.4.0/tests/boilerplate.py    
2024-02-14 15:52:48.000000000 +0100
+++ new/python-proton-vpn-network-manager-0.4.2/tests/boilerplate.py    
2024-03-06 10:28:24.000000000 +0100
@@ -23,9 +23,9 @@
 @dataclass
 class VPNServer:
     server_ip: str = None
-    udp_ports: List[int] = None
-    tcp_ports: List[int] = None
-    wg_public_key_x25519: str = None
+    openvpn_ports: object = None
+    wireguard_ports: object = None
+    x25519pk: str = None
     domain: str = None
     servername: str = None
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/tests/test_networkmanager.py 
new/python-proton-vpn-network-manager-0.4.2/tests/test_networkmanager.py
--- old/python-proton-vpn-network-manager-0.4.0/tests/test_networkmanager.py    
2024-02-14 15:52:48.000000000 +0100
+++ new/python-proton-vpn-network-manager-0.4.2/tests/test_networkmanager.py    
2024-03-06 10:28:24.000000000 +0100
@@ -31,6 +31,8 @@
 from proton.vpn.backend.linux.networkmanager.core import LinuxNetworkManager
 from proton.vpn.connection import states
 from proton.vpn.connection import events
+from collections import namedtuple
+OpenVPNPorts = namedtuple("OpenVPNPorts", "udp tcp")
 
 
 class LinuxNetworkManagerProtocol(LinuxNetworkManager):
@@ -44,7 +46,7 @@
 
         super().__init__(*args, connection_persistence=connection_persistence, 
killswitch=killswitch, **kwargs)
 
-    def _setup(self):
+    def setup(self):
         # to be mocked in tests
         pass
 
@@ -56,7 +58,9 @@
 
 def create_nm_protocol(nm_client_mock):
     return LinuxNetworkManagerProtocol(
-        VPNServer(), VPNCredentials(), Settings(), nm_client=nm_client_mock
+        VPNServer(
+                openvpn_ports=OpenVPNPorts([00], [00])
+        ), VPNCredentials(), Settings(), nm_client=nm_client_mock
     )
 
 
@@ -64,11 +68,11 @@
 @patch("proton.vpn.backend.linux.networkmanager.core.networkmanager.tcpcheck")
 async def test_start(tcpcheck_patch, nm_client_mock):
     # Mock successful TCP connection check.
-    tcpcheck_patch.is_any_port_reachable = AsyncMock(return_value=True)
+    tcpcheck_patch.is_any_port_reachable = AsyncMock()
 
     nm_protocol = create_nm_protocol(nm_client_mock)
 
-    with patch.object(nm_protocol, "_setup") as setup_mock:
+    with patch.object(nm_protocol, "setup") as setup_mock:
         start_connection_future = Future()
         nm_client_mock.start_connection_async.return_value = 
start_connection_future
         connection_mock = setup_mock.return_value.result()
@@ -84,7 +88,7 @@
     # is hooked to monitor vpn connection state changes.
     connection_mock.connect.assert_called_once_with(
         "vpn-state-changed",
-        nm_protocol._on_vpn_state_changed
+        nm_protocol._on_state_changed
     )
 
 
@@ -99,7 +103,7 @@
     connection_subscriber = Mock()
     nm_protocol = create_nm_protocol(nm_client_mock)
     nm_protocol.register(connection_subscriber)
-    with patch.object(nm_protocol, "_setup") as setup_mock:
+    with patch.object(nm_protocol, "setup") as setup_mock:
         await nm_protocol.start()
 
         setup_mock.assert_not_called()
@@ -120,7 +124,7 @@
     # Mock successful TCP connection check.
     tcpcheck_patch.is_any_port_reachable = AsyncMock(return_value=True)
 
-    with patch.object(nm_protocol, "_setup") as setup_mock:
+    with patch.object(nm_protocol, "setup") as setup_mock:
         # Mock error on connection setup.
         setup_connection_future = Future()
         setup_connection_future.set_exception(GLib.GError)
@@ -148,12 +152,12 @@
     # Mock successful TCP connection check.
     tcpcheck_patch.is_any_port_reachable = AsyncMock(return_value=True)
 
-    with patch.multiple(nm_protocol, _setup=DEFAULT, 
remove_connection=DEFAULT) as mocks:
+    with patch.multiple(nm_protocol, setup=DEFAULT, remove_connection=DEFAULT) 
as mocks:
         # Mock successful connection setup.
         connection = Mock()
         setup_connection_future = Future()
         setup_connection_future.set_result(connection)
-        mocks["_setup"].return_value = setup_connection_future
+        mocks["setup"].return_value = setup_connection_future
 
         # Mock error on connection activation.
         start_connection_future = Future()
@@ -269,10 +273,10 @@
     ]
 )
 
@patch("proton.vpn.backend.linux.networkmanager.core.LinuxNetworkManager._notify_subscribers_threadsafe")
-async def test_on_vpn_state_changed(_notify_subscribers_threadsafe, 
nm_client_mock, state, reason, expected_event):
+async def test_on_state_changed(_notify_subscribers_threadsafe, 
nm_client_mock, state, reason, expected_event):
     _notify_subscribers_threadsafe.return_value = None
     nm_protocol = create_nm_protocol(nm_client_mock)
-    nm_protocol._on_vpn_state_changed(None, state, reason)
+    nm_protocol._on_state_changed(None, state, reason)
 
     # assert that the LinuxNetworkManager._notify_subscribers method was 
called with the expected event
     _notify_subscribers_threadsafe.assert_called_once()
@@ -303,24 +307,17 @@
 async def 
test_initialize_persisted_connection_determines_initial_connection_state(
         active_nm_connection, inactive_nm_connection, expected_state
 ):
-    persisted_parameters = ConnectionParameters(
-        connection_id="connection-id",
-        killswitch=0,
-        backend=LinuxNetworkManagerProtocol.backend,
-        protocol=LinuxNetworkManagerProtocol.protocol,
-        server_id="server-id",
-        server_name="server-name"
-    )
     nm_client_mock = Mock()
     nm_client_mock.get_active_connection.return_value = active_nm_connection
     nm_client_mock.get_connection.return_value = inactive_nm_connection
 
     # The VPNConnection constructor calls `_initialize_persisted_connection`
-    # when `persisted_parameters` are provided.
+    # when `connection_id` is provided.
     nm_protocol = LinuxNetworkManagerProtocol(
         server=None,
         credentials=None,
-        persisted_parameters=persisted_parameters,
+        settings=None,
+        connection_id="connection_id",
         nm_client=nm_client_mock
     )
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/tests_integration/boilerplate.py 
new/python-proton-vpn-network-manager-0.4.2/tests_integration/boilerplate.py
--- 
old/python-proton-vpn-network-manager-0.4.0/tests_integration/boilerplate.py    
    2024-02-14 15:52:48.000000000 +0100
+++ 
new/python-proton-vpn-network-manager-0.4.2/tests_integration/boilerplate.py    
    2024-03-06 10:28:24.000000000 +0100
@@ -23,9 +23,9 @@
 @dataclass
 class VPNServer:
     server_ip: str = None
-    udp_ports: List[int] = None
-    tcp_ports: List[int] = None
-    wg_public_key_x25519: str = None
+    openvpn_ports: object = None
+    wireguard_ports: object = None
+    x25519pk: str = None
     domain: str = None
     servername: str = None
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-proton-vpn-network-manager-0.4.0/tests_integration/test_connection_up_and_down.py
 
new/python-proton-vpn-network-manager-0.4.2/tests_integration/test_connection_up_and_down.py
--- 
old/python-proton-vpn-network-manager-0.4.0/tests_integration/test_connection_up_and_down.py
        2024-02-14 15:52:48.000000000 +0100
+++ 
new/python-proton-vpn-network-manager-0.4.2/tests_integration/test_connection_up_and_down.py
        2024-03-06 10:28:24.000000000 +0100
@@ -42,8 +42,11 @@
 logger.info(f"Testing against server {VPN_SERVER_NAME}.")
 
 EXPECTED_CONNECTION_NAME = f"ProtonVPN {VPN_SERVER_NAME}"
+from collections import namedtuple
 
 
+OpenVPNPorts = namedtuple("OpenVPNPorts", "udp tcp")
+
 @pytest.fixture(scope="module")
 def vpn_client_config():
     return get_vpn_client_config()
@@ -53,10 +56,11 @@
 def vpn_server(vpn_client_config):
     server = get_vpn_server_by_name(VPN_SERVER_NAME)
     default_ports = vpn_client_config["OpenVPNConfig"]["DefaultPorts"]
+
     return VPNServer(
         server_ip=server["Servers"][0]["EntryIP"],
-        udp_ports=default_ports["UDP"],
-        tcp_ports=default_ports["TCP"],
+        openvpn_ports=OpenVPNPorts(default_ports["UDP"], default_ports["TCP"]),
+        wireguard_ports={},
         domain=server["Domain"],
         servername=server["Name"]
     )

Reply via email to