Hello community,

here is the log from the commit of package python-tinydb for openSUSE:Factory 
checked in at 2019-09-17 13:39:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-tinydb (Old)
 and      /work/SRC/openSUSE:Factory/.python-tinydb.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-tinydb"

Tue Sep 17 13:39:07 2019 rev:3 rq:731291 version:3.14.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-tinydb/python-tinydb.changes      
2019-06-03 18:55:37.320423254 +0200
+++ /work/SRC/openSUSE:Factory/.python-tinydb.new.7948/python-tinydb.changes    
2019-09-17 13:39:07.249826484 +0200
@@ -1,0 +2,8 @@
+Mon Sep 16 13:23:27 UTC 2019 - Tomáš Chvátal <[email protected]>
+
+- Update to 3.14.1:
+  * More tes fixes
+  * Deprecate ujson support
+  * Fixed various deprecation warnings
+
+-------------------------------------------------------------------

Old:
----
  tinydb-3.13.0.tar.gz

New:
----
  tinydb-3.14.1.tar.gz

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

Other differences:
------------------
++++++ python-tinydb.spec ++++++
--- /var/tmp/diff_new_pack.sIYv6o/_old  2019-09-17 13:39:07.821826393 +0200
+++ /var/tmp/diff_new_pack.sIYv6o/_new  2019-09-17 13:39:07.821826393 +0200
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-tinydb
-Version:        3.13.0
+Version:        3.14.1
 Release:        0
 Summary:        A document-oriented database
 License:        MIT
@@ -28,7 +28,6 @@
 BuildRequires:  %{python_module PyYAML}
 BuildRequires:  %{python_module pytest-runner}
 BuildRequires:  %{python_module setuptools}
-BuildRequires:  %{python_module ujson}
 BuildRequires:  dos2unix
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros

++++++ tinydb-3.13.0.tar.gz -> tinydb-3.14.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/PKG-INFO new/tinydb-3.14.1/PKG-INFO
--- old/tinydb-3.13.0/PKG-INFO  2019-03-16 14:41:29.000000000 +0100
+++ new/tinydb-3.14.1/PKG-INFO  2019-09-13 23:06:21.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: tinydb
-Version: 3.13.0
+Version: 3.14.1
 Summary: TinyDB is a tiny, document oriented database optimized for your 
happiness :)
 Home-page: https://github.com/msiemens/tinydb
 Author: Markus Siemens
@@ -35,8 +35,8 @@
         
         TinyDB is:
         
-        - **tiny:** The current source code has 1200 lines of code (with about 
40%
-          documentation) and 1000 lines of tests. For comparison: Buzhug_ has 
about 2500
+        - **tiny:** The current source code has 1600 lines of code (with about 
33%
+          documentation) and 1800 lines of tests. For comparison: Buzhug_ has 
about 2500
           lines of code (w/o tests), CodernityDB_ has about 7000 lines of code
           (w/o tests).
         
@@ -50,7 +50,7 @@
           e.g. `PyMongo <http://api.mongodb.org/python/current/>`_) nor any 
dependencies
           from PyPI.
         
-        - **works on Python 2.7 and 3.3 – 3.6 and PyPy:** TinyDB works on all 
modern
+        - **works on Python 2.7 and 3.3 – 3.7 and PyPy:** TinyDB works on all 
modern
           versions of Python and PyPy.
         
         - **powerfully extensible:** You can easily extend TinyDB by writing 
new
@@ -135,14 +135,14 @@
         4. Send a pull request and bug the maintainer until it gets merged and
            published ☺
         
-        .. |Build Status| image:: 
http://img.shields.io/travis/msiemens/tinydb.svg?style=flat-square
-           :target: https://travis-ci.org/msiemens/tinydb
+        .. |Build Status| image:: 
https://img.shields.io/azure-devops/build/msiemens/3e5baa75-12ec-43ac-9728-89823ee8c7e2/2.svg?style=flat-square
+           :target: https://dev.azure.com/msiemens/github/_build?definitionId=2
         .. |Coverage| image:: 
http://img.shields.io/coveralls/msiemens/tinydb.svg?style=flat-square
            :target: https://coveralls.io/r/msiemens/tinydb
         .. |Version| image:: 
http://img.shields.io/pypi/v/tinydb.svg?style=flat-square
            :target: https://pypi.python.org/pypi/tinydb/
         .. _Buzhug: http://buzhug.sourceforge.net/
-        .. _CodernityDB: http://labs.codernity.com/codernitydb/
+        .. _CodernityDB: https://github.com/perchouli/codernitydb
         .. _MongoDB: http://mongodb.org/
         
 Keywords: database nosql
@@ -161,6 +161,7 @@
 Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Operating System :: OS Independent
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/README.rst new/tinydb-3.14.1/README.rst
--- old/tinydb-3.13.0/README.rst        2019-01-07 09:59:07.000000000 +0100
+++ new/tinydb-3.14.1/README.rst        2019-07-03 21:34:20.000000000 +0200
@@ -23,8 +23,8 @@
 
 TinyDB is:
 
-- **tiny:** The current source code has 1200 lines of code (with about 40%
-  documentation) and 1000 lines of tests. For comparison: Buzhug_ has about 
2500
+- **tiny:** The current source code has 1600 lines of code (with about 33%
+  documentation) and 1800 lines of tests. For comparison: Buzhug_ has about 
2500
   lines of code (w/o tests), CodernityDB_ has about 7000 lines of code
   (w/o tests).
 
@@ -38,7 +38,7 @@
   e.g. `PyMongo <http://api.mongodb.org/python/current/>`_) nor any 
dependencies
   from PyPI.
 
-- **works on Python 2.7 and 3.3 – 3.6 and PyPy:** TinyDB works on all modern
+- **works on Python 2.7 and 3.3 – 3.7 and PyPy:** TinyDB works on all modern
   versions of Python and PyPy.
 
 - **powerfully extensible:** You can easily extend TinyDB by writing new
@@ -123,12 +123,12 @@
 4. Send a pull request and bug the maintainer until it gets merged and
    published ☺
 
-.. |Build Status| image:: 
http://img.shields.io/travis/msiemens/tinydb.svg?style=flat-square
-   :target: https://travis-ci.org/msiemens/tinydb
+.. |Build Status| image:: 
https://img.shields.io/azure-devops/build/msiemens/3e5baa75-12ec-43ac-9728-89823ee8c7e2/2.svg?style=flat-square
+   :target: https://dev.azure.com/msiemens/github/_build?definitionId=2
 .. |Coverage| image:: 
http://img.shields.io/coveralls/msiemens/tinydb.svg?style=flat-square
    :target: https://coveralls.io/r/msiemens/tinydb
 .. |Version| image:: http://img.shields.io/pypi/v/tinydb.svg?style=flat-square
    :target: https://pypi.python.org/pypi/tinydb/
 .. _Buzhug: http://buzhug.sourceforge.net/
-.. _CodernityDB: http://labs.codernity.com/codernitydb/
+.. _CodernityDB: https://github.com/perchouli/codernitydb
 .. _MongoDB: http://mongodb.org/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/setup.py new/tinydb-3.14.1/setup.py
--- old/tinydb-3.13.0/setup.py  2018-11-17 17:35:14.000000000 +0100
+++ new/tinydb-3.14.1/setup.py  2019-07-03 21:34:59.000000000 +0200
@@ -49,6 +49,7 @@
         "Programming Language :: Python :: 3.4",
         "Programming Language :: Python :: 3.5",
         "Programming Language :: Python :: 3.6",
+        "Programming Language :: Python :: 3.7",
         "Programming Language :: Python :: Implementation :: CPython",
         "Programming Language :: Python :: Implementation :: PyPy",
         "Operating System :: OS Independent"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tests/test_queries.py 
new/tinydb-3.14.1/tests/test_queries.py
--- old/tinydb-3.13.0/tests/test_queries.py     2018-09-13 12:29:14.000000000 
+0200
+++ new/tinydb-3.14.1/tests/test_queries.py     2019-07-03 21:34:20.000000000 
+0200
@@ -363,3 +363,20 @@
 
     assert repr(Fruit) == "Query()"
     assert repr(Fruit.type == 'peach') == "QueryImpl('==', ('type',), 'peach')"
+
+
+def test_subclass():
+    # Test that a new query test method in a custom subclass is properly usable
+    class MyQueryClass(Query):
+        def equal_double(self, rhs):
+            return self._generate_test(
+            lambda value: value == rhs*2,
+            ('equal_double', self._path, rhs)
+        )
+
+    query = MyQueryClass().val.equal_double('42')
+
+    assert query({'val': '4242'})
+    assert not query({'val': '42'})
+    assert not query({'': None})
+    assert hash(query)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tests/test_storages.py 
new/tinydb-3.14.1/tests/test_storages.py
--- old/tinydb-3.13.0/tests/test_storages.py    2018-10-30 09:55:11.000000000 
+0100
+++ new/tinydb-3.14.1/tests/test_storages.py    2019-07-03 21:34:20.000000000 
+0200
@@ -13,6 +13,13 @@
 
 random.seed()
 
+try:
+    import ujson as json
+except ImportError:
+    HAS_UJSON = False
+else:
+    HAS_UJSON = True
+
 doc = {'none': [None, None], 'int': 42, 'float': 3.1415899999999999,
        'list': ['LITE', 'RES_ACID', 'SUS_DEXT'],
        'dict': {'hp': 13, 'sp': 5},
@@ -30,6 +37,7 @@
     storage.close()
 
 
[email protected](HAS_UJSON, reason="not compatible with ujson")
 def test_json_kwargs(tmpdir):
     db_file = tmpdir.join('test.db')
     db = TinyDB(str(db_file), sort_keys=True, indent=4, separators=(',', ': '))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tests/test_tables.py 
new/tinydb-3.14.1/tests/test_tables.py
--- old/tinydb-3.13.0/tests/test_tables.py      2018-10-30 09:55:11.000000000 
+0100
+++ new/tinydb-3.14.1/tests/test_tables.py      2019-07-03 21:34:20.000000000 
+0200
@@ -115,5 +115,5 @@
 
     assert re.match(
         r"<Table name=\'table4\', total=0, "
-        "storage=<tinydb\.database\.StorageProxy object at [a-zA-Z0-9]+>>",
+        r"storage=<tinydb\.database\.StorageProxy object at [a-zA-Z0-9]+>>",
         repr(table))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tests/test_tinydb.py 
new/tinydb-3.14.1/tests/test_tinydb.py
--- old/tinydb-3.13.0/tests/test_tinydb.py      2019-03-16 14:33:50.000000000 
+0100
+++ new/tinydb-3.14.1/tests/test_tinydb.py      2019-09-13 23:02:50.000000000 
+0200
@@ -4,10 +4,17 @@
 
 import pytest
 
-from tinydb import TinyDB, where
+from tinydb import TinyDB, where, Query
 from tinydb.middlewares import Middleware, CachingMiddleware
 from tinydb.storages import MemoryStorage
 
+try:
+    import ujson as json
+except ImportError:
+    HAS_UJSON = False
+else:
+    HAS_UJSON = True
+
 
 def test_purge(db):
     db.purge()
@@ -93,7 +100,7 @@
 
 
 def test_insert_invalid_type_raises_error(db):
-    with pytest.raises(ValueError, message='Document is not a Mapping'):
+    with pytest.raises(ValueError, match='Document is not a Mapping'):
         db.insert(object())  # object() as an example of a non-mapping-type
 
 
@@ -539,6 +546,7 @@
         _db.insert({'int': 3})  # Does not fail
 
 
[email protected](HAS_UJSON, reason="not compatible with ujson")
 def test_insert_invalid_dict(tmpdir):
     path = str(tmpdir.join('db.json'))
 
@@ -547,7 +555,7 @@
         _db.insert_multiple(data)
 
         with pytest.raises(TypeError):
-            _db.insert({'int': {'bark'}})  # Fails
+            _db.insert({'int': _db})  # Fails
 
         assert data == _db.all()
 
@@ -583,6 +591,16 @@
     TinyDB.DEFAULT_TABLE = default_table
 
 
+def test_non_default_table_args():
+    TinyDB.DEFAULT_TABLE_KWARGS = {'cache_size': 0}
+
+    db = TinyDB(storage=MemoryStorage)
+    default_table = db.table()
+    assert default_table._query_cache.capacity == 0
+
+    TinyDB.DEFAULT_TABLE_KWARGS = {}
+
+
 def test_purge_table():
     db = TinyDB(storage=MemoryStorage)
     assert [TinyDB.DEFAULT_TABLE] == list(db.tables())
@@ -689,6 +707,8 @@
 
 
 def test_string_key():
+    from collections import Mapping
+
     from tinydb.database import Table, StorageProxy, Document
     from tinydb.storages import MemoryStorage
 
@@ -712,53 +732,42 @@
             self._last_id = next_id
             return str(next_id)
 
-        def _get_doc_id(self, document):
-            if not isinstance(document, dict):
-                raise ValueError('Document is not a dictionary')
-            return document.get('doc_id') or self._get_next_id()
+        def insert(self, document):
+            if not isinstance(document, Mapping):
+                raise ValueError('Document is not a Mapping')
 
-    db = TinyDB(storage=MemoryStorage, table_class=Table2,
-                storage_proxy_class=StorageProxy2)
-    table = db.table()
-    table.insert({'doc_id': 'abc'})
-    assert table.get(doc_id='abc')['doc_id'] == 'abc'
-    assert table._last_id == 0
-    table.insert({'abc': 10})
-    assert table.get(doc_id='1')['abc'] == 10
-    assert table._last_id == 1
+            doc_id = document.get('doc_id') or self._get_next_id()
 
+            data = self._read()
+            data[doc_id] = dict(document)
+            self._write(data)
 
-def test_string_key2():
-    from tinydb.database import Table, StorageProxy, Document
-    from tinydb.storages import MemoryStorage
+        def insert_multiple(self, documents):
+            """
+            Insert multiple documents into the table.
+
+            :param documents: a list of documents to insert
+            :returns: a list containing the inserted documents' IDs
+            """
 
-    class StorageProxy2(StorageProxy):
-        def _new_document(self, key, val):
-            # Don't convert the key to a number here!
-            return Document(val, key)
+            doc_ids = []
+            data = self._read()
 
-    class Table2(Table):
-        def _init_last_id(self, data):
-            if data:
-                self._last_id = len(data)
-            else:
-                self._last_id = 0
+            for document in documents:
+                if not isinstance(document, Mapping):
+                    raise ValueError('Document is not a Mapping')
 
-        def _get_next_id(self):
-            next_id = self._last_id + 1
-            data = self._read()
-            while str(next_id) in data:
-                next_id += 1
-            self._last_id = next_id
-            return str(next_id)
+                doc_id = document.get('doc_id') or self._get_next_id()
+                doc_ids.append(doc_id)
 
-        def _get_doc_id(self, document):
-            if not isinstance(document, dict):
-                raise ValueError('Document is not a dictionary')
-            return document.get('doc_id') or self._get_next_id()
+                data[doc_id] = dict(document)
 
-    TinyDB.storage_proxy_class = StorageProxy2
-    db = TinyDB(storage=MemoryStorage, table_class=Table2)
+            self._write(data)
+
+            return doc_ids
+
+    db = TinyDB(storage=MemoryStorage, table_class=Table2,
+                storage_proxy_class=StorageProxy2)
     table = db.table()
     table.insert({'doc_id': 'abc'})
     assert table.get(doc_id='abc')['doc_id'] == 'abc'
@@ -780,6 +789,21 @@
         repr(TinyDB(path)))
 
 
+def test_delete(tmpdir):
+    path = str(tmpdir.join('db.json'))
+
+    db = TinyDB(path, ensure_ascii=False)
+    q = Query()
+    db.insert({'network': {'id': '114', 'name': 'ok', 'rpc': 'dac',
+                           'ticker': 'mkay'}})
+    assert db.search(q.network.id == '114') == [
+        {'network': {'id': '114', 'name': 'ok', 'rpc': 'dac',
+                     'ticker': 'mkay'}}
+    ]
+    db.remove(q.network.id == '114')
+    assert db.search(q.network.id == '114') == []
+
+
 def test_insert_multiple_with_single_dict(db):
     with pytest.raises(ValueError):
         d = {'first': 'John', 'last': 'smith'}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tinydb/database.py 
new/tinydb-3.14.1/tinydb/database.py
--- old/tinydb-3.13.0/tinydb/database.py        2019-03-16 14:33:50.000000000 
+0100
+++ new/tinydb-3.14.1/tinydb/database.py        2019-09-13 23:02:50.000000000 
+0200
@@ -133,6 +133,7 @@
     """
 
     DEFAULT_TABLE = '_default'
+    DEFAULT_TABLE_KWARGS = {}
     DEFAULT_STORAGE = JSONStorage
 
     def __init__(self, *args, **kwargs):
@@ -162,6 +163,7 @@
         # Prepare the default table
 
         self._table_cache = {}
+        #: :type: Table
         self._table = self.table(default_table)
 
     def __repr__(self):
@@ -193,7 +195,12 @@
             return self._table_cache[name]
 
         table_class = options.pop('table_class', self._cls_table)
-        table = table_class(self._cls_storage_proxy(self._storage, name), 
name, **options)
+
+        table_kwargs = self.DEFAULT_TABLE_KWARGS.copy()
+        table_kwargs.update(options)
+
+        table = table_class(self._cls_storage_proxy(self._storage, name), name,
+                            **table_kwargs)
 
         self._table_cache[name] = table
 
@@ -393,11 +400,6 @@
 
         return current_id
 
-    def _get_doc_id(self, document):
-        if not isinstance(document, Mapping):
-            raise ValueError('Document is not a Mapping')
-        return self._get_next_id()
-
     def _read(self):
         """
         Reading access to the DB.
@@ -453,8 +455,10 @@
         :param document: the document to insert
         :returns: the inserted document's ID
         """
+        if not isinstance(document, Mapping):
+            raise ValueError('Document is not a Mapping')
 
-        doc_id = self._get_doc_id(document)
+        doc_id = self._get_next_id()
         data = self._read()
         data[doc_id] = dict(document)
         self._write(data)
@@ -468,15 +472,17 @@
         :param documents: a list of documents to insert
         :returns: a list containing the inserted documents' IDs
         """
-
         doc_ids = []
         data = self._read()
 
-        for doc in documents:
-            doc_id = self._get_doc_id(doc)
+        for document in documents:
+            if not isinstance(document, Mapping):
+                raise ValueError('Document is not a Mapping')
+
+            doc_id = self._get_next_id()
             doc_ids.append(doc_id)
 
-            data[doc_id] = dict(doc)
+            data[doc_id] = dict(document)
 
         self._write(data)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tinydb/queries.py 
new/tinydb-3.14.1/tinydb/queries.py
--- old/tinydb-3.13.0/tinydb/queries.py 2018-12-12 19:42:38.000000000 +0100
+++ new/tinydb-3.14.1/tinydb/queries.py 2019-07-03 21:34:20.000000000 +0200
@@ -4,8 +4,8 @@
 Starting with :class:`~tinydb.queries.Query` you can construct complex
 queries:
 
->>> ((where('f1') == 5) & (where('f2') != 2)) | where('s').matches(r'^\w+$')
-(('f1' == 5) and ('f2' != 2)) or ('s' ~= ^\w+$ )
+>>> ((where('f1') == 5) & (where('f2') != 2)) | where('s').matches(r'^\\w+$')
+(('f1' == 5) and ('f2' != 2)) or ('s' ~= ^\\w+$ )
 
 Queries are executed by using the ``__call__``:
 
@@ -120,7 +120,7 @@
         return super(Query, self).__hash__()
 
     def __getattr__(self, item):
-        query = Query()
+        query = type(self)()
         query._path = self._path + (item, )
         query.hashval = ('path', query._path)
 
@@ -265,7 +265,7 @@
         """
         Run a regex test against a dict value (whole string has to match).
 
-        >>> Query().f1.matches(r'^\w+$')
+        >>> Query().f1.matches(r'^\\w+$')
 
         :param regex: The regular expression to use for matching
         """
@@ -279,7 +279,7 @@
         Run a regex test against a dict value (only substring string has to
         match).
 
-        >>> Query().f1.search(r'^\w+$')
+        >>> Query().f1.search(r'^\\w+$')
 
         :param regex: The regular expression to use for matching
         """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tinydb/storages.py 
new/tinydb-3.14.1/tinydb/storages.py
--- old/tinydb-3.13.0/tinydb/storages.py        2019-02-25 16:50:47.000000000 
+0100
+++ new/tinydb-3.14.1/tinydb/storages.py        2019-07-03 21:34:20.000000000 
+0200
@@ -2,16 +2,24 @@
 Contains the :class:`base class <tinydb.storages.Storage>` for storages and
 implementations.
 """
-
 from abc import ABCMeta, abstractmethod
 import codecs
 import os
+import warnings
 
 from .utils import with_metaclass
 
 
 try:
     import ujson as json
+
+    warnings.warn(
+        'Support for `ujson` is reprecated and will be replaced in '
+        'a future version. '
+        'See https://github.com/msiemens/tinydb/issues/263 for '
+        'details.',
+        DeprecationWarning
+    )
 except ImportError:
     import json
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tinydb/version.py 
new/tinydb-3.14.1/tinydb/version.py
--- old/tinydb-3.13.0/tinydb/version.py 2019-03-16 14:37:12.000000000 +0100
+++ new/tinydb-3.14.1/tinydb/version.py 2019-09-13 23:03:46.000000000 +0200
@@ -1 +1 @@
-__version__ = '3.13.0'
+__version__ = '3.14.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tinydb-3.13.0/tinydb.egg-info/PKG-INFO 
new/tinydb-3.14.1/tinydb.egg-info/PKG-INFO
--- old/tinydb-3.13.0/tinydb.egg-info/PKG-INFO  2019-03-16 14:41:29.000000000 
+0100
+++ new/tinydb-3.14.1/tinydb.egg-info/PKG-INFO  2019-09-13 23:06:21.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: tinydb
-Version: 3.13.0
+Version: 3.14.1
 Summary: TinyDB is a tiny, document oriented database optimized for your 
happiness :)
 Home-page: https://github.com/msiemens/tinydb
 Author: Markus Siemens
@@ -35,8 +35,8 @@
         
         TinyDB is:
         
-        - **tiny:** The current source code has 1200 lines of code (with about 
40%
-          documentation) and 1000 lines of tests. For comparison: Buzhug_ has 
about 2500
+        - **tiny:** The current source code has 1600 lines of code (with about 
33%
+          documentation) and 1800 lines of tests. For comparison: Buzhug_ has 
about 2500
           lines of code (w/o tests), CodernityDB_ has about 7000 lines of code
           (w/o tests).
         
@@ -50,7 +50,7 @@
           e.g. `PyMongo <http://api.mongodb.org/python/current/>`_) nor any 
dependencies
           from PyPI.
         
-        - **works on Python 2.7 and 3.3 – 3.6 and PyPy:** TinyDB works on all 
modern
+        - **works on Python 2.7 and 3.3 – 3.7 and PyPy:** TinyDB works on all 
modern
           versions of Python and PyPy.
         
         - **powerfully extensible:** You can easily extend TinyDB by writing 
new
@@ -135,14 +135,14 @@
         4. Send a pull request and bug the maintainer until it gets merged and
            published ☺
         
-        .. |Build Status| image:: 
http://img.shields.io/travis/msiemens/tinydb.svg?style=flat-square
-           :target: https://travis-ci.org/msiemens/tinydb
+        .. |Build Status| image:: 
https://img.shields.io/azure-devops/build/msiemens/3e5baa75-12ec-43ac-9728-89823ee8c7e2/2.svg?style=flat-square
+           :target: https://dev.azure.com/msiemens/github/_build?definitionId=2
         .. |Coverage| image:: 
http://img.shields.io/coveralls/msiemens/tinydb.svg?style=flat-square
            :target: https://coveralls.io/r/msiemens/tinydb
         .. |Version| image:: 
http://img.shields.io/pypi/v/tinydb.svg?style=flat-square
            :target: https://pypi.python.org/pypi/tinydb/
         .. _Buzhug: http://buzhug.sourceforge.net/
-        .. _CodernityDB: http://labs.codernity.com/codernitydb/
+        .. _CodernityDB: https://github.com/perchouli/codernitydb
         .. _MongoDB: http://mongodb.org/
         
 Keywords: database nosql
@@ -161,6 +161,7 @@
 Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Operating System :: OS Independent


Reply via email to