Hello community,

here is the log from the commit of package python-magic-wormhole-mailbox-server 
for openSUSE:Factory checked in at 2019-10-09 15:19:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-magic-wormhole-mailbox-server (Old)
 and      
/work/SRC/openSUSE:Factory/.python-magic-wormhole-mailbox-server.new.2352 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-magic-wormhole-mailbox-server"

Wed Oct  9 15:19:10 2019 rev:3 rq:736242 version:0.4.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-magic-wormhole-mailbox-server/python-magic-wormhole-mailbox-server.changes
        2019-06-03 18:56:10.524410938 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-magic-wormhole-mailbox-server.new.2352/python-magic-wormhole-mailbox-server.changes
      2019-10-09 15:19:12.468536921 +0200
@@ -1,0 +2,9 @@
+Tue Oct  8 14:13:43 UTC 2019 - Marketa Calabkova <mcalabk...@suse.com>
+
+- Update to version 0.4.1
+  * listen on IPv4+IPv6 socket by default
+  * deallocate AppNamespace objects when empty
+  * add client-version-uptake munin plugin
+  * drop support for py3.3 and py3.4
+
+-------------------------------------------------------------------

Old:
----
  magic-wormhole-mailbox-server-0.3.1.tar.gz

New:
----
  magic-wormhole-mailbox-server-0.4.1.tar.gz

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

Other differences:
------------------
++++++ python-magic-wormhole-mailbox-server.spec ++++++
--- /var/tmp/diff_new_pack.Xz6gzU/_old  2019-10-09 15:19:13.052535415 +0200
+++ /var/tmp/diff_new_pack.Xz6gzU/_new  2019-10-09 15:19:13.052535415 +0200
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-magic-wormhole-mailbox-server
-Version:        0.3.1
+Version:        0.4.1
 Release:        0
 Summary:        Key exchange and control message server for Magic-Wormhole
 License:        MIT

++++++ magic-wormhole-mailbox-server-0.3.1.tar.gz -> 
magic-wormhole-mailbox-server-0.4.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/magic-wormhole-mailbox-server-0.3.1/NEWS.md 
new/magic-wormhole-mailbox-server-0.4.1/NEWS.md
--- old/magic-wormhole-mailbox-server-0.3.1/NEWS.md     2018-06-24 
04:04:38.000000000 +0200
+++ new/magic-wormhole-mailbox-server-0.4.1/NEWS.md     2019-09-11 
09:16:46.000000000 +0200
@@ -1,6 +1,19 @@
 
 User-visible changes in "magic-wormhole-mailbox-server":
 
+## Release 0.4.1 (11-Sep-2019)
+
+* listen on IPv4+IPv6 properly (#16)
+
+
+## Release 0.4.0 (10-Sep-2019)
+
+* listen on IPv4+IPv6 socket by default (#16)
+* deallocate AppNamespace objects when empty (#12)
+* add client-version-uptake munin plugin
+* drop support for py3.3 and py3.4
+
+
 ## Release 0.3.1 (23-Jun-2018)
 
 Record 'None' for when client doesn't supply a version, to make the math
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/magic-wormhole-mailbox-server-0.3.1/PKG-INFO 
new/magic-wormhole-mailbox-server-0.4.1/PKG-INFO
--- old/magic-wormhole-mailbox-server-0.3.1/PKG-INFO    2018-06-24 
04:05:26.000000000 +0200
+++ new/magic-wormhole-mailbox-server-0.4.1/PKG-INFO    2019-09-11 
09:18:26.000000000 +0200
@@ -1,6 +1,6 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: magic-wormhole-mailbox-server
-Version: 0.3.1
+Version: 0.4.1
 Summary: Securely transfer data between computers
 Home-page: https://github.com/warner/magic-wormhole-mailbox-server
 Author: Brian Warner
@@ -87,8 +87,7 @@
         
         This library is released under the MIT license, see LICENSE for 
details.
         
-        This library is compatible with python2.7, 3.4 (non-Windows-only), 
3.5, and
-        3.6 .
+        This library is compatible with python2.7, and python3 (3.5 and 
higher).
         
 Platform: UNKNOWN
 Classifier: Development Status :: 4 - Beta
@@ -98,3 +97,5 @@
 Classifier: Topic :: System :: Networking
 Classifier: Topic :: System :: Systems Administration
 Classifier: Topic :: Utilities
+Description-Content-Type: text/markdown
+Provides-Extra: dev
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/magic-wormhole-mailbox-server-0.3.1/README.md 
new/magic-wormhole-mailbox-server-0.4.1/README.md
--- old/magic-wormhole-mailbox-server-0.3.1/README.md   2018-04-03 
00:22:54.000000000 +0200
+++ new/magic-wormhole-mailbox-server-0.4.1/README.md   2019-09-11 
07:53:40.000000000 +0200
@@ -79,5 +79,4 @@
 
 This library is released under the MIT license, see LICENSE for details.
 
-This library is compatible with python2.7, 3.4 (non-Windows-only), 3.5, and
-3.6 .
+This library is compatible with python2.7, and python3 (3.5 and higher).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/magic_wormhole_mailbox_server.egg-info/PKG-INFO
 
new/magic-wormhole-mailbox-server-0.4.1/src/magic_wormhole_mailbox_server.egg-info/PKG-INFO
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/magic_wormhole_mailbox_server.egg-info/PKG-INFO
 2018-06-24 04:05:26.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/magic_wormhole_mailbox_server.egg-info/PKG-INFO
 2019-09-11 09:18:26.000000000 +0200
@@ -1,6 +1,6 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: magic-wormhole-mailbox-server
-Version: 0.3.1
+Version: 0.4.1
 Summary: Securely transfer data between computers
 Home-page: https://github.com/warner/magic-wormhole-mailbox-server
 Author: Brian Warner
@@ -87,8 +87,7 @@
         
         This library is released under the MIT license, see LICENSE for 
details.
         
-        This library is compatible with python2.7, 3.4 (non-Windows-only), 
3.5, and
-        3.6 .
+        This library is compatible with python2.7, and python3 (3.5 and 
higher).
         
 Platform: UNKNOWN
 Classifier: Development Status :: 4 - Beta
@@ -98,3 +97,5 @@
 Classifier: Topic :: System :: Networking
 Classifier: Topic :: System :: Systems Administration
 Classifier: Topic :: Utilities
+Description-Content-Type: text/markdown
+Provides-Extra: dev
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/magic_wormhole_mailbox_server.egg-info/requires.txt
 
new/magic-wormhole-mailbox-server-0.4.1/src/magic_wormhole_mailbox_server.egg-info/requires.txt
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/magic_wormhole_mailbox_server.egg-info/requires.txt
     2018-06-24 04:05:26.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/magic_wormhole_mailbox_server.egg-info/requires.txt
     2019-09-11 09:18:26.000000000 +0200
@@ -1,13 +1,13 @@
-attrs >= 16.3.0
-autobahn[twisted] >= 0.14.1
 six
-twisted[tls] >= 17.5.0
+attrs>=16.3.0
+twisted[tls]>=17.5.0
+autobahn[twisted]>=0.14.1
 
 [:sys_platform=="win32"]
 pywin32
 
 [dev]
 mock
-pyflakes
-tox
 treq
+tox
+pyflakes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/_version.py 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/_version.py
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/_version.py 
    2018-06-24 04:05:26.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/_version.py 
    2019-09-11 09:18:26.000000000 +0200
@@ -8,11 +8,11 @@
 
 version_json = '''
 {
- "date": "2018-06-23T19:04:57-0700",
+ "date": "2019-09-11T00:16:54-0700",
  "dirty": false,
  "error": null,
- "full-revisionid": "291f977addf52d651183a46b85986462176630a7",
- "version": "0.3.1"
+ "full-revisionid": "b24af3af32ebb4ea0e28d92d956588764b8e47dd",
+ "version": "0.4.1"
 }
 '''  # END VERSION_JSON
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/database.py 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/database.py
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/database.py 
    2018-06-24 03:44:57.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/database.py 
    2019-09-11 07:53:40.000000000 +0200
@@ -15,14 +15,10 @@
 
 def get_upgrader(name, new_version):
     try:
-        FileNotFoundError # py3
-    except NameError:
-        FileNotFoundError = EnvironmentError # py2
-    try:
         schema_bytes = resource_string("wormhole_mailbox_server",
                                        "db-schemas/upgrade-%s-to-v%d.sql" %
                                        (name, new_version))
-    except FileNotFoundError:
+    except EnvironmentError: # includes FileNotFoundError on py3
         raise ValueError("no upgrader for %d" % new_version)
     return schema_bytes.decode("utf-8")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/server.py 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/server.py
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/server.py   
    2018-06-24 03:44:57.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/server.py   
    2019-09-11 07:53:40.000000000 +0200
@@ -183,13 +183,14 @@
             server_rx = self._blur_usage * (server_rx // self._blur_usage)
         implementation = client_version[0]
         version = client_version[1]
-        self._usage_db.execute("INSERT INTO `client_versions`"
-                               " (`app_id`, `side`, `connect_time`,"
-                               "  `implementation`, `version`)"
-                               " VALUES(?,?,?,?,?)",
-                               (self._app_id, side, server_rx,
-                                implementation, version))
-        self._usage_db.commit()
+        if self._usage_db:
+            self._usage_db.execute("INSERT INTO `client_versions`"
+                                   " (`app_id`, `side`, `connect_time`,"
+                                   "  `implementation`, `version`)"
+                                   " VALUES(?,?,?,?,?)",
+                                   (self._app_id, side, server_rx,
+                                    implementation, version))
+            self._usage_db.commit()
 
     def get_nameplate_ids(self):
         if not self._allow_list:
@@ -521,14 +522,16 @@
                        (mailbox_id,))
             if self._usage_db:
                 self._summarize_mailbox_and_store(for_nameplate, side_rows,
-                                                now, pruned=True)
+                                                  now, pruned=True)
             modified = True
 
         if modified:
             db.commit()
             if self._usage_db:
                 self._usage_db.commit()
-        log.msg("  prune complete, modified:", modified)
+        in_use = bool(self._mailboxes)
+        log.msg("  prune complete, modified=%s, in_use=%s" % (modified, 
in_use))
+        return in_use
 
     def count_listeners(self):
         return sum(mailbox.count_listeners()
@@ -591,7 +594,9 @@
         for app_id in sorted(self.get_all_apps()):
             log.msg(" app prune checking %r" % (app_id,))
             app = self.get_app(app_id)
-            app.prune(now, old)
+            in_use = app.prune(now, old)
+            if not in_use:
+                del self._apps[app_id]
         log.msg("app prune ends, %d apps" % len(self._apps))
 
     def dump_stats(self, now, rebooted):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/server_tap.py
 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/server_tap.py
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/server_tap.py
   2018-06-24 03:44:57.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/server_tap.py
   2019-09-11 09:16:19.000000000 +0200
@@ -19,7 +19,7 @@
     longdesc = LONGDESC
 
     optParameters = [
-        ("port", "p", "tcp:4000", "endpoint to listen on"),
+        ("port", "p", "tcp:4000:interface=\:\:", "endpoint to listen on"),
         ("blur-usage", None, None, "round logged access times to improve 
privacy"),
         ("log-fd", None, None, "write JSON usage logs to this file 
descriptor"),
         ("channel-db", None, "relay.sqlite", "location for the state 
database"),
@@ -90,7 +90,13 @@
     def expire():
         now = time.time()
         old = now - CHANNEL_EXPIRATION_TIME
-        server.prune_all_apps(now, old)
+        try:
+            server.prune_all_apps(now, old)
+        except Exception as e:
+            # catch-and-log exceptions during prune, so a single error won't
+            # kill the loop. See #13 for details.
+            log.msg("error during prune_all_apps")
+            log.err(e)
         server.dump_stats(now, rebooted=rebooted)
     TimerService(EXPIRATION_CHECK_PERIOD, expire).setServiceParent(parent)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/test/test_config.py
 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/test/test_config.py
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/test/test_config.py
     2018-02-18 10:14:32.000000000 +0100
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/test/test_config.py
     2019-09-11 09:16:19.000000000 +0200
@@ -3,11 +3,13 @@
 from twisted.trial import unittest
 from .. import server_tap
 
+PORT = "tcp:4000:interface=\:\:"
+
 class Config(unittest.TestCase):
     def test_defaults(self):
         o = server_tap.Options()
         o.parseOptions([])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -22,7 +24,7 @@
     def test_advertise_version(self):
         o = server_tap.Options()
         o.parseOptions(["--advertise-version=1.0"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -37,7 +39,7 @@
     def test_blur(self):
         o = server_tap.Options()
         o.parseOptions(["--blur-usage=60"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -52,7 +54,7 @@
     def test_channel_db(self):
         o = server_tap.Options()
         o.parseOptions(["--channel-db=other.sqlite"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "other.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -67,7 +69,7 @@
     def test_disallow_list(self):
         o = server_tap.Options()
         o.parseOptions(["--disallow-list"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": False,
@@ -82,7 +84,7 @@
     def test_log_fd(self):
         o = server_tap.Options()
         o.parseOptions(["--log-fd=5"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -126,7 +128,7 @@
     def test_signal_error(self):
         o = server_tap.Options()
         o.parseOptions(["--signal-error=ohnoes"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -141,7 +143,7 @@
     def test_usage_db(self):
         o = server_tap.Options()
         o.parseOptions(["--usage-db=usage.sqlite"])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -156,7 +158,7 @@
     def test_websocket_protocol_option_1(self):
         o = server_tap.Options()
         o.parseOptions(["--websocket-protocol-option", 'foo="bar"'])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
@@ -173,7 +175,7 @@
         o.parseOptions(["--websocket-protocol-option", 'foo="bar"',
                         "--websocket-protocol-option", 'baz=[1,"buz"]',
                         ])
-        self.assertEqual(o, {"port": "tcp:4000",
+        self.assertEqual(o, {"port": PORT,
                              "channel-db": "relay.sqlite",
                              "disallow-list": 0,
                              "allow-list": True,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/test/test_stats.py
 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/test/test_stats.py
--- 
old/magic-wormhole-mailbox-server-0.3.1/src/wormhole_mailbox_server/test/test_stats.py
      2018-06-24 03:44:57.000000000 +0200
+++ 
new/magic-wormhole-mailbox-server-0.4.1/src/wormhole_mailbox_server/test/test_stats.py
      2018-10-17 01:12:05.000000000 +0200
@@ -62,6 +62,10 @@
                          [dict(app_id="appid", connect_time=400, side="side1",
                                implementation="python", version="1.2.3")])
 
+    def test_no_usage_db(self):
+        s, db, app = self.make(with_usage_db=False)
+        app.log_client_version(451, "side1", ("python", "1.2.3"))
+
 class Nameplate(_Make, unittest.TestCase):
     def test_nameplate_happy(self):
         s, db, app = self.make()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/magic-wormhole-mailbox-server-0.3.1/tox.ini 
new/magic-wormhole-mailbox-server-0.4.1/tox.ini
--- old/magic-wormhole-mailbox-server-0.3.1/tox.ini     2018-06-17 
00:13:10.000000000 +0200
+++ new/magic-wormhole-mailbox-server-0.4.1/tox.ini     2019-09-11 
07:53:40.000000000 +0200
@@ -4,7 +4,7 @@
 # and then run "tox" from this directory.
 
 [tox]
-envlist = {py27,py34,py35,py36,pypy}
+envlist = {py27,py35,py36,py37,pypy}
 skip_missing_interpreters = True
 minversion = 2.4.0
 


Reply via email to