Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-nbxmpp for openSUSE:Factory 
checked in at 2022-05-30 12:43:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-nbxmpp (Old)
 and      /work/SRC/openSUSE:Factory/.python-nbxmpp.new.2254 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-nbxmpp"

Mon May 30 12:43:55 2022 rev:30 rq:979723 version:3.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-nbxmpp/python-nbxmpp.changes      
2022-05-21 19:07:20.371399280 +0200
+++ /work/SRC/openSUSE:Factory/.python-nbxmpp.new.2254/python-nbxmpp.changes    
2022-05-30 12:44:49.444460296 +0200
@@ -1,0 +2,7 @@
+Sat May 28 20:17:01 UTC 2022 - Alexei Sorokin <sor.ale...@meowr.ru>
+
+- Update to version 3.1.0:
+  * Client: Disconnect after stream restart in Login mode.
+  * Examples: Allow to connect with different modes.
+
+-------------------------------------------------------------------

Old:
----
  python-nbxmpp-nbxmpp-3.0.2.tar.bz2

New:
----
  python-nbxmpp-3.1.0.tar.bz2

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

Other differences:
------------------
++++++ python-nbxmpp.spec ++++++
--- /var/tmp/diff_new_pack.FGVeUB/_old  2022-05-30 12:44:49.984461015 +0200
+++ /var/tmp/diff_new_pack.FGVeUB/_new  2022-05-30 12:44:49.988461021 +0200
@@ -21,13 +21,13 @@
 %define skip_python38 1
 %define _name   nbxmpp
 Name:           python-nbxmpp
-Version:        3.0.2
+Version:        3.1.0
 Release:        0
 Summary:        XMPP library by Gajim team
 License:        GPL-3.0-or-later
 Group:          Development/Languages/Python
 URL:            https://dev.gajim.org/gajim/python-nbxmpp
-Source:         
%{url}/-/archive/nbxmpp-%{version}/python-nbxmpp-nbxmpp-%{version}.tar.bz2
+Source:         %{url}/-/archive/%{version}/python-nbxmpp-%{version}.tar.bz2
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-generators >= 20200714
@@ -57,7 +57,7 @@
 This packages provides documentation of Nbxmpp API.
 
 %prep
-%setup -q -n python-nbxmpp-nbxmpp-%{version}
+%setup -q
 
 %build
 %python_build

++++++ python-nbxmpp-nbxmpp-3.0.2.tar.bz2 -> python-nbxmpp-3.1.0.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/.chglog/config.yml 
new/python-nbxmpp-3.1.0/.chglog/config.yml
--- old/python-nbxmpp-nbxmpp-3.0.2/.chglog/config.yml   2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/.chglog/config.yml  2022-05-28 11:27:58.000000000 
+0200
@@ -8,17 +8,20 @@
     filters:
       Type:
         - feat
+        - imprv
         - perf
         - fix
   commit_groups:
     sort_by: Custom
     title_order:
       - feat
+      - imprv
       - perf
       - fix
     title_maps:
       feat: New
-      perf: Performance Improvements
+      imprv: Improvements
+      perf: Performance
       fix: Bug Fixes
   header:
     pattern: "^(\\w*)\\:\\s(.*)$"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/.ci/debian_build.py 
new/python-nbxmpp-3.1.0/.ci/debian_build.py
--- old/python-nbxmpp-nbxmpp-3.0.2/.ci/debian_build.py  1970-01-01 
01:00:00.000000000 +0100
+++ new/python-nbxmpp-3.1.0/.ci/debian_build.py 2022-05-28 11:27:58.000000000 
+0200
@@ -0,0 +1,105 @@
+#!/usr/bin/env python3
+
+from __future__ import annotations
+
+import argparse
+import dataclasses
+import logging
+import shutil
+import subprocess
+from datetime import datetime
+from datetime import timezone
+from pathlib import Path
+
+LOG_FORMAT = '%(asctime)s %(levelname)s %(message)s'
+logging.basicConfig(format=LOG_FORMAT, level=logging.DEBUG)
+log = logging.getLogger()
+
+ROOT_DIR = Path(__file__).resolve().parent.parent
+BUILD_DIR = ROOT_DIR / 'debian_build'
+
+DATE = datetime.now().strftime('%Y%m%d')
+DATE_TIME = datetime.now(tz=timezone.utc).strftime('%a, %d %b %Y %T %z')
+
+
+@dataclasses.dataclass
+class ReleaseContext:
+    app: str
+    pkg_name: str
+    rev: str
+    release_name: str
+    release_dir: Path
+    tarball: Path
+
+    @classmethod
+    def from_tarball(cls, path: str, prefix: str, rev: str) -> ReleaseContext:
+        tarball = Path(path)
+        app = tarball.name.split('-', maxsplit=1)[0]
+        pkg_name = f'{prefix}{app}-nightly'
+        release_name = f'{pkg_name}_{DATE}'
+        release_dir = BUILD_DIR / release_name
+        return cls(app=app,
+                   pkg_name=pkg_name,
+                   rev=rev,
+                   release_name=release_name,
+                   release_dir=release_dir,
+                   tarball=tarball)
+
+
+def clean_build_dir() -> None:
+    log.info('Cleanup build directory')
+    if BUILD_DIR.exists():
+        shutil.rmtree(BUILD_DIR)
+    BUILD_DIR.mkdir()
+
+
+def prepare_package_dir(context: ReleaseContext) -> None:
+    log.info('Extract tarball')
+    tarball = Path(shutil.copy(context.tarball, BUILD_DIR))
+    tarball = tarball.rename(BUILD_DIR / f'{context.release_name}.orig.tar.gz')
+    shutil.unpack_archive(tarball, BUILD_DIR)
+
+    log.info('Rename dir to: %s', context.release_name)
+    folder = list(BUILD_DIR.glob(f'{context.app}-?.?.?'))[0]
+    folder = folder.rename(context.release_dir)
+
+    log.info('Copy debian folder into release directory')
+    shutil.copytree(ROOT_DIR / 'debian', context.release_dir / 'debian')
+
+
+def prepare_changelog(context: ReleaseContext) -> None:
+    log.info('Prepare Changelog')
+    changelog = context.release_dir / 'debian' / 'changelog'
+    content = changelog.read_text()
+    content = content.replace('{DATE}', f'{DATE}-{context.rev}')
+    content = content.replace('{DATE_TIME}', DATE_TIME)
+    changelog.write_text(content)
+
+
+def build(context: ReleaseContext) -> None:
+    log.info('Start package build')
+    subprocess.run(
+       [
+        'dpkg-buildpackage',
+        '--no-sign'
+       ],
+       cwd=context.release_dir,
+       check=True)
+
+
+if __name__ == '__main__':
+    parser = argparse.ArgumentParser(description='Build debian package')
+    parser.add_argument('tarball', help='Path to tarball e.g. app.tar.gz')
+    parser.add_argument('rev', help='The package revision e.g. 1')
+    parser.add_argument('--pkgprefix', default='', required=False,
+                        help='Prefix for the package name e.g. python3-')
+    args = parser.parse_args()
+
+    context = ReleaseContext.from_tarball(args.tarball,
+                                          args.pkgprefix,
+                                          args.rev)
+
+    clean_build_dir()
+    prepare_package_dir(context)
+    prepare_changelog(context)
+    build(context)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/.gitignore 
new/python-nbxmpp-3.1.0/.gitignore
--- old/python-nbxmpp-nbxmpp-3.0.2/.gitignore   2022-05-18 20:11:37.000000000 
+0200
+++ new/python-nbxmpp-3.1.0/.gitignore  2022-05-28 11:27:58.000000000 +0200
@@ -2,6 +2,7 @@
 __pycache__/
 .mypy_cache/
 nbxmpp.egg-info
+debian_build/
 dist
 .idea
 *~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/.gitlab-ci.yml 
new/python-nbxmpp-3.1.0/.gitlab-ci.yml
--- old/python-nbxmpp-nbxmpp-3.0.2/.gitlab-ci.yml       2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/.gitlab-ci.yml      2022-05-28 11:27:58.000000000 
+0200
@@ -1,11 +1,12 @@
-image: ci-gajim:master
+image: nbxmpp-master:latest
 
 stages:
   - test
   - build
   - deploy
 
-run-test:
+test-pylint:
+  
   stage: test
   script:
     - python3 .ci/pylint-test.py
@@ -18,10 +19,12 @@
     reports:
       cobertura: coverage.xml
 
-run-build:
+build-linux:
+  image: nbxmpp-deb-build:latest
   stage: build
   script:
     - python3 setup.py sdist
+    - python3 .ci/debian_build.py "$(find dist/nbxmpp-*)" 1 
--pkgprefix=python3-
 
   artifacts:
     name: "nbxmpp-$CI_COMMIT_SHA"
@@ -33,6 +36,5 @@
   stage: deploy
   rules:
     - if: '$CI_COMMIT_TAG'
-      when: manual
   script:
     - python3 .ci/deploy.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/ChangeLog 
new/python-nbxmpp-3.1.0/ChangeLog
--- old/python-nbxmpp-nbxmpp-3.0.2/ChangeLog    2022-05-18 20:11:37.000000000 
+0200
+++ new/python-nbxmpp-3.1.0/ChangeLog   2022-05-28 11:27:58.000000000 +0200
@@ -1,3 +1,13 @@
+python-nbxmpp 3.1.0 (28 May 2022)
+
+ New
+ 
+ * Examples: Allow to connect with different modes
+ 
+ Bug Fixes
+ 
+ * Client: Disconnect after stream restart in Login mode
+
 python-nbxmpp 3.0.2 (18 May 2022)
 
  Bug Fixes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/MANIFEST.in 
new/python-nbxmpp-3.1.0/MANIFEST.in
--- old/python-nbxmpp-nbxmpp-3.0.2/MANIFEST.in  2022-05-18 20:11:37.000000000 
+0200
+++ new/python-nbxmpp-3.1.0/MANIFEST.in 2022-05-28 11:27:58.000000000 +0200
@@ -1,3 +1,3 @@
 include ChangeLog COPYING README
-recursive-include doc *
 recursive-include nbxmpp *.py
+recursive-include test *.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/debian/changelog 
new/python-nbxmpp-3.1.0/debian/changelog
--- old/python-nbxmpp-nbxmpp-3.0.2/debian/changelog     1970-01-01 
01:00:00.000000000 +0100
+++ new/python-nbxmpp-3.1.0/debian/changelog    2022-05-28 11:27:58.000000000 
+0200
@@ -0,0 +1,5 @@
+python3-nbxmpp-nightly ({DATE}) unstable; urgency=low
+
+  * https://dev.gajim.org/gajim/python-nbxmpp/-/commits/master
+
+ -- nbxmpp CI <c...@gajim.org>  {DATE_TIME}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/debian/control 
new/python-nbxmpp-3.1.0/debian/control
--- old/python-nbxmpp-nbxmpp-3.0.2/debian/control       1970-01-01 
01:00:00.000000000 +0100
+++ new/python-nbxmpp-3.1.0/debian/control      2022-05-28 11:27:58.000000000 
+0200
@@ -0,0 +1,31 @@
+Source: python3-nbxmpp-nightly
+Section: python
+Priority: optional
+Maintainer: Gajim Maintainers <c...@gajim.org>
+Build-Depends: debhelper-compat (= 13),
+    dh-python,
+    libglib2.0-0 (>= 2.60),
+    gir1.2-soup-2.4,
+    python3-all,
+    python3-gi,
+    python3-gssapi,
+    python3-idna,
+    python3-precis-i18n,
+    python3-setuptools,
+Standards-Version: 4.1.4
+Rules-Requires-Root: no
+Homepage: https://dev.gajim.org/gajim/python-nbxmpp
+Vcs-Git: https://dev.gajim.org/gajim/python-nbxmpp.git
+Vcs-Browser: https://dev.gajim.org/gajim/python-nbxmpp/tree/master
+
+Package: python3-nbxmpp-nightly
+Architecture: all
+Depends: ${misc:Depends},
+    ${python3:Depends},
+    gir1.2-soup-2.4,
+    python3-gi
+Recommends: python3-gssapi,
+Breaks: gajim (<< 1.4~)
+Description: Non blocking XMPP Python library
+ nbxmpp is a Python library that provides a way for Python applications
+ to use the XMPP network. This library was initially a fork of xmpppy.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/debian/copyright 
new/python-nbxmpp-3.1.0/debian/copyright
--- old/python-nbxmpp-nbxmpp-3.0.2/debian/copyright     1970-01-01 
01:00:00.000000000 +0100
+++ new/python-nbxmpp-3.1.0/debian/copyright    2022-05-28 11:27:58.000000000 
+0200
@@ -0,0 +1,18 @@
+Upstream Authors:
+      - Yann Leboulanger <aste...@lagaule.org>
+      - Philipp H??rist <phil...@hoerist.com>
+ 
+Copyright: (c) 2022 Gajim Team
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/debian/rules 
new/python-nbxmpp-3.1.0/debian/rules
--- old/python-nbxmpp-nbxmpp-3.0.2/debian/rules 1970-01-01 01:00:00.000000000 
+0100
+++ new/python-nbxmpp-3.1.0/debian/rules        2022-05-28 11:27:58.000000000 
+0200
@@ -0,0 +1,9 @@
+#!/usr/bin/make -f
+
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/default.mk
+
+export PYBUILD_NAME=nbxmpp
+
+%:
+       dh $@ --with python3 --buildsystem=pybuild
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/debian/source/format 
new/python-nbxmpp-3.1.0/debian/source/format
--- old/python-nbxmpp-nbxmpp-3.0.2/debian/source/format 1970-01-01 
01:00:00.000000000 +0100
+++ new/python-nbxmpp-3.1.0/debian/source/format        2022-05-28 
11:27:58.000000000 +0200
@@ -0,0 +1 @@
+3.0 (quilt)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/__init__.py 
new/python-nbxmpp-3.1.0/nbxmpp/__init__.py
--- old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/__init__.py   2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/nbxmpp/__init__.py  2022-05-28 11:27:58.000000000 
+0200
@@ -4,4 +4,4 @@
 
 gi.require_version('Soup', '2.4')
 
-__version__: str = '3.0.2'
+__version__: str = '3.1.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/client.py 
new/python-nbxmpp-3.1.0/nbxmpp/client.py
--- old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/client.py     2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/nbxmpp/client.py    2022-05-28 11:27:58.000000000 
+0200
@@ -645,6 +645,11 @@
                 # other connection methods if an error happensafterwards
                 self._connect_successful = True
 
+            if self._stream_authenticated and self._mode.is_login_test:
+                self.notify('login-successful')
+                self.disconnect()
+                return
+
             self.state = StreamState.WAIT_FOR_FEATURES
 
         elif self.state == StreamState.WAIT_FOR_FEATURES:
@@ -687,14 +692,6 @@
 
         elif self.state == StreamState.AUTH_SUCCESSFUL:
             self._stream_authenticated = True
-            if self._mode.is_login_test:
-                self.notify('login-successful')
-                # Reset parser because we will receive a new stream header
-                # which will otherwise lead to a parsing error
-                self._dispatcher.reset_parser()
-                self.disconnect()
-                return
-
             self._start_stream()
 
         elif self.state == StreamState.AUTH_FAILED:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/examples/client.py 
new/python-nbxmpp-3.1.0/nbxmpp/examples/client.py
--- old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/examples/client.py    2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/nbxmpp/examples/client.py   2022-05-28 
11:27:58.000000000 +0200
@@ -16,10 +16,10 @@
 from nbxmpp.client import Client
 from nbxmpp.structs import ProxyData
 from nbxmpp.structs import StanzaHandler
-from nbxmpp.addresses import ServerAddress
 from nbxmpp.const import ConnectionType
 from nbxmpp.const import ConnectionProtocol
 from nbxmpp.const import StreamError
+from nbxmpp.const import Mode
 
 consoleloghandler = logging.StreamHandler()
 log = logging.getLogger('nbxmpp')
@@ -94,6 +94,17 @@
                               self._builder.proxy_password.get_text() or None)
             self._client.set_proxy(proxy)
 
+        if self._builder.login_mode.get_active():
+            self._client.set_mode(Mode.LOGIN_TEST)
+        elif self._builder.client_mode.get_active():
+            self._client.set_mode(Mode.CLIENT)
+        elif self._builder.register_mode.get_active():
+            self._client.set_mode(Mode.REGISTER)
+        elif self._builder.anon_mode.get_active():
+            self._client.set_mode(Mode.ANONYMOUS_TEST)
+        else:
+            raise ValueError('No mode selected')
+
         self._client.set_connection_types(self._get_connection_types())
         self._client.set_protocols(self._get_connection_protocols())
 
@@ -168,8 +179,10 @@
         self._scroll_timeout = GLib.timeout_add(50, self.scroll_to_end)
 
     def _connect_clicked(self, *args):
-        if self._client is None:
-            self._create_client()
+        if self._client is not None:
+            self._client.destroy()
+
+        self._create_client()
 
         self._client.connect()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/examples/client.ui 
new/python-nbxmpp-3.1.0/nbxmpp/examples/client.ui
--- old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/examples/client.ui    2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/nbxmpp/examples/client.ui   2022-05-28 
11:27:58.000000000 +0200
@@ -1,27 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.22.1 -->
+<!-- Generated with glade 3.38.2 -->
 <interface>
   <requires lib="gtk+" version="3.20"/>
+  <!-- n-columns=1 n-rows=3 -->
   <object class="GtkGrid" id="grid">
     <property name="visible">True</property>
-    <property name="can_focus">False</property>
-    <property name="margin_left">24</property>
-    <property name="margin_right">24</property>
-    <property name="margin_top">24</property>
-    <property name="margin_bottom">24</property>
-    <property name="row_spacing">12</property>
+    <property name="can-focus">False</property>
+    <property name="margin-start">24</property>
+    <property name="margin-end">24</property>
+    <property name="margin-top">24</property>
+    <property name="margin-bottom">24</property>
+    <property name="row-spacing">12</property>
     <child>
       <object class="GtkButtonBox">
         <property name="visible">True</property>
-        <property name="can_focus">False</property>
+        <property name="can-focus">False</property>
         <property name="spacing">12</property>
-        <property name="layout_style">start</property>
+        <property name="layout-style">start</property>
         <child>
           <object class="GtkButton">
             <property name="label" translatable="yes">Connect</property>
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="receives_default">True</property>
+            <property name="can-focus">True</property>
+            <property name="receives-default">True</property>
             <signal name="clicked" handler="_connect_clicked" swapped="no"/>
             <style>
               <class name="suggested-action"/>
@@ -37,8 +38,8 @@
           <object class="GtkButton">
             <property name="label" translatable="yes">Disconnect</property>
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="receives_default">True</property>
+            <property name="can-focus">True</property>
+            <property name="receives-default">True</property>
             <signal name="clicked" handler="_disconnect_clicked" swapped="no"/>
             <style>
               <class name="destructive-action"/>
@@ -54,8 +55,8 @@
           <object class="GtkButton">
             <property name="label" translatable="yes">Reconnect</property>
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="receives_default">True</property>
+            <property name="can-focus">True</property>
+            <property name="receives-default">True</property>
             <signal name="clicked" handler="_on_reconnect_clicked" 
swapped="no"/>
           </object>
           <packing>
@@ -68,8 +69,8 @@
           <object class="GtkButton" id="clear">
             <property name="label" translatable="yes">Clear</property>
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="receives_default">True</property>
+            <property name="can-focus">True</property>
+            <property name="receives-default">True</property>
             <signal name="clicked" handler="_clear_clicked" swapped="no"/>
           </object>
           <packing>
@@ -80,242 +81,244 @@
         </child>
       </object>
       <packing>
-        <property name="left_attach">0</property>
-        <property name="top_attach">2</property>
+        <property name="left-attach">0</property>
+        <property name="top-attach">2</property>
       </packing>
     </child>
     <child>
+      <!-- n-columns=3 n-rows=8 -->
       <object class="GtkGrid">
         <property name="visible">True</property>
-        <property name="can_focus">False</property>
+        <property name="can-focus">False</property>
         <property name="hexpand">True</property>
-        <property name="row_spacing">6</property>
-        <property name="column_spacing">12</property>
+        <property name="row-spacing">6</property>
+        <property name="column-spacing">12</property>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">XMPP-Address</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">0</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">0</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">Password</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">1</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">1</property>
           </packing>
         </child>
         <child>
           <object class="GtkEntry" id="address">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
+            <property name="can-focus">True</property>
             <property name="valign">center</property>
             <property name="hexpand">True</property>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">0</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">0</property>
           </packing>
         </child>
         <child>
           <object class="GtkEntry" id="password">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
+            <property name="can-focus">True</property>
             <property name="valign">center</property>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">1</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">1</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">Proxy Host or 
IP</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">3</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">3</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">Proxy Port</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">4</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">4</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">Proxy Password</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">6</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">6</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">Proxy Username</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">5</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">5</property>
           </packing>
         </child>
         <child>
           <object class="GtkEntry" id="proxy_ip">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
+            <property name="can-focus">True</property>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">3</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">3</property>
           </packing>
         </child>
         <child>
           <object class="GtkEntry" id="proxy_username">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
+            <property name="can-focus">True</property>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">5</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">5</property>
           </packing>
         </child>
         <child>
           <object class="GtkEntry" id="proxy_port">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
+            <property name="can-focus">True</property>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">4</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">4</property>
           </packing>
         </child>
         <child>
           <object class="GtkEntry" id="proxy_password">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
+            <property name="can-focus">True</property>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">6</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">6</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="label" translatable="yes">Save</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">7</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">7</property>
           </packing>
         </child>
         <child>
           <object class="GtkButton">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="receives_default">True</property>
-            <property name="tooltip_text" translatable="yes">Save</property>
+            <property name="can-focus">True</property>
+            <property name="receives-default">True</property>
+            <property name="tooltip-text" translatable="yes">Save</property>
             <property name="halign">start</property>
             <signal name="clicked" handler="_on_save_clicked" swapped="no"/>
             <child>
               <object class="GtkImage">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="icon_name">document-save-symbolic</property>
+                <property name="can-focus">False</property>
+                <property name="icon-name">document-save-symbolic</property>
               </object>
             </child>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">7</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">7</property>
           </packing>
         </child>
         <child>
           <object class="GtkFrame">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
+            <property name="can-focus">False</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
               <object class="GtkAlignment">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="top_padding">12</property>
-                <property name="bottom_padding">12</property>
-                <property name="left_padding">12</property>
+                <property name="can-focus">False</property>
+                <property name="top-padding">12</property>
+                <property name="bottom-padding">12</property>
+                <property name="left-padding">12</property>
                 <child>
+                  <!-- n-columns=1 n-rows=3 -->
                   <object class="GtkGrid">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can-focus">False</property>
                     <child>
                       <object class="GtkCheckButton" id="directtls">
                         <property name="label" translatable="yes">DIRECT 
TLS</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
                         <property name="halign">start</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="draw-indicator">True</property>
                       </object>
                       <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">0</property>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
                       </packing>
                     </child>
                     <child>
                       <object class="GtkCheckButton" id="starttls">
                         <property name="label" translatable="yes">START 
TLS</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
                         <property name="halign">start</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="draw-indicator">True</property>
                       </object>
                       <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">1</property>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">1</property>
                       </packing>
                     </child>
                     <child>
                       <object class="GtkCheckButton" id="plain">
                         <property name="label" 
translatable="yes">PLAIN</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
                         <property name="halign">start</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="draw-indicator">True</property>
                       </object>
                       <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">2</property>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">2</property>
                       </packing>
                     </child>
                   </object>
@@ -325,60 +328,61 @@
             <child type="label">
               <object class="GtkLabel">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
+                <property name="can-focus">False</property>
                 <property name="label" translatable="yes">Connection 
Type</property>
               </object>
             </child>
           </object>
           <packing>
-            <property name="left_attach">2</property>
-            <property name="top_attach">0</property>
+            <property name="left-attach">2</property>
+            <property name="top-attach">0</property>
             <property name="height">3</property>
           </packing>
         </child>
         <child>
           <object class="GtkFrame">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
+            <property name="can-focus">False</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
               <object class="GtkAlignment">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="top_padding">12</property>
-                <property name="bottom_padding">12</property>
-                <property name="left_padding">12</property>
+                <property name="can-focus">False</property>
+                <property name="top-padding">12</property>
+                <property name="bottom-padding">12</property>
+                <property name="left-padding">12</property>
                 <child>
+                  <!-- n-columns=1 n-rows=2 -->
                   <object class="GtkGrid">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can-focus">False</property>
                     <child>
                       <object class="GtkCheckButton" id="tcp">
                         <property name="label" 
translatable="yes">TCP</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
                         <property name="halign">start</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="draw-indicator">True</property>
                       </object>
                       <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">0</property>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
                       </packing>
                     </child>
                     <child>
                       <object class="GtkCheckButton" id="websocket">
                         <property name="label" 
translatable="yes">WEBSOCKET</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
                         <property name="halign">start</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="draw-indicator">True</property>
                       </object>
                       <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">1</property>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">1</property>
                       </packing>
                     </child>
                   </object>
@@ -388,34 +392,34 @@
             <child type="label">
               <object class="GtkLabel">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
+                <property name="can-focus">False</property>
                 <property name="label" translatable="yes">Connection 
Protocol</property>
               </object>
             </child>
           </object>
           <packing>
-            <property name="left_attach">2</property>
-            <property name="top_attach">3</property>
+            <property name="left-attach">2</property>
+            <property name="top-attach">3</property>
             <property name="height">3</property>
           </packing>
         </child>
         <child>
           <object class="GtkLabel">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="halign">end</property>
             <property name="label" translatable="yes">Proxy Type</property>
             <property name="xalign">1</property>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">2</property>
+            <property name="left-attach">0</property>
+            <property name="top-attach">2</property>
           </packing>
         </child>
         <child>
           <object class="GtkComboBoxText" id="proxy_type">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="halign">start</property>
             <property name="active">0</property>
             <items>
@@ -423,37 +427,128 @@
             </items>
           </object>
           <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">2</property>
+            <property name="left-attach">1</property>
+            <property name="top-attach">2</property>
           </packing>
         </child>
         <child>
-          <placeholder/>
+          <object class="GtkFrame">
+            <property name="visible">True</property>
+            <property name="can-focus">False</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
+            <child>
+              <object class="GtkAlignment">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <property name="top-padding">12</property>
+                <property name="bottom-padding">12</property>
+                <property name="left-padding">12</property>
+                <child>
+                  <!-- n-columns=1 n-rows=4 -->
+                  <object class="GtkGrid">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <child>
+                      <object class="GtkRadioButton" id="client_mode">
+                        <property name="label" 
translatable="yes">Client</property>
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
+                        <property name="active">True</property>
+                        <property name="draw-indicator">True</property>
+                        <property name="group">login_mode</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="login_mode">
+                        <property name="label" 
translatable="yes">Login</property>
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
+                        <property name="active">True</property>
+                        <property name="draw-indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="register_mode">
+                        <property name="label" 
translatable="yes">Register</property>
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
+                        <property name="active">True</property>
+                        <property name="draw-indicator">True</property>
+                        <property name="group">login_mode</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="anon_mode">
+                        <property name="label" 
translatable="yes">Anyonymous</property>
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
+                        <property name="active">True</property>
+                        <property name="draw-indicator">True</property>
+                        <property name="group">login_mode</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">3</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+              </object>
+            </child>
+            <child type="label">
+              <object class="GtkLabel">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <property name="label" translatable="yes">Modes</property>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="left-attach">2</property>
+            <property name="top-attach">6</property>
+          </packing>
         </child>
         <child>
           <placeholder/>
         </child>
       </object>
       <packing>
-        <property name="left_attach">0</property>
-        <property name="top_attach">0</property>
+        <property name="left-attach">0</property>
+        <property name="top-attach">0</property>
       </packing>
     </child>
     <child>
       <object class="GtkScrolledWindow" id="scrolledwin">
         <property name="visible">True</property>
-        <property name="can_focus">True</property>
+        <property name="can-focus">True</property>
         <property name="hexpand">True</property>
         <property name="vexpand">True</property>
-        <property name="shadow_type">in</property>
+        <property name="shadow-type">in</property>
         <child>
           <object class="GtkViewport">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <child>
               <object class="GtkListBox" id="xml_box">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
+                <property name="can-focus">False</property>
                 <property name="vexpand">True</property>
               </object>
             </child>
@@ -461,8 +556,8 @@
         </child>
       </object>
       <packing>
-        <property name="left_attach">0</property>
-        <property name="top_attach">1</property>
+        <property name="left-attach">0</property>
+        <property name="top-attach">1</property>
       </packing>
     </child>
   </object>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/tcp.py 
new/python-nbxmpp-3.1.0/nbxmpp/tcp.py
--- old/python-nbxmpp-nbxmpp-3.0.2/nbxmpp/tcp.py        2022-05-18 
20:11:37.000000000 +0200
+++ new/python-nbxmpp-3.1.0/nbxmpp/tcp.py       2022-05-28 11:27:58.000000000 
+0200
@@ -173,7 +173,6 @@
 
         if self._address.type == ConnectionType.DIRECT_TLS:
             tls_client.set_advertised_protocols(['xmpp-client'])
-        tls_client.set_validation_flags(Gio.TlsCertificateFlags.VALIDATE_ALL)
         tls_client.connect('accept-certificate', self._check_certificate)
         tls_client.connect('notify::peer-certificate', 
self._on_certificate_set)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-nbxmpp-nbxmpp-3.0.2/setup.cfg 
new/python-nbxmpp-3.1.0/setup.cfg
--- old/python-nbxmpp-nbxmpp-3.0.2/setup.cfg    2022-05-18 20:11:37.000000000 
+0200
+++ new/python-nbxmpp-3.1.0/setup.cfg   2022-05-28 11:27:58.000000000 +0200
@@ -1,6 +1,6 @@
 [metadata]
 name = nbxmpp
-version = 3.0.2
+version = 3.1.0
 description = XMPP Library
 author = Yann Leboulanger, Philipp Hoerist
 author_email = gajim-de...@gajim.org

Reply via email to