Hello community,
here is the log from the commit of package python-voluptuous-serialize for
openSUSE:Factory checked in at 2020-02-07 15:55:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-voluptuous-serialize (Old)
and /work/SRC/openSUSE:Factory/.python-voluptuous-serialize.new.26092
(New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-voluptuous-serialize"
Fri Feb 7 15:55:06 2020 rev:3 rq:770678 version:2.3.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-voluptuous-serialize/python-voluptuous-serialize.changes
2019-09-11 10:33:44.655324957 +0200
+++
/work/SRC/openSUSE:Factory/.python-voluptuous-serialize.new.26092/python-voluptuous-serialize.changes
2020-02-07 15:56:33.651578716 +0100
@@ -1,0 +2,6 @@
+Thu Feb 6 17:41:29 UTC 2020 - Marketa Calabkova <[email protected]>
+
+- update to 2.3.0
+ * Add support for custom serializer
+
+-------------------------------------------------------------------
Old:
----
voluptuous-serialize-2.2.0.tar.gz
New:
----
voluptuous-serialize-2.3.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-voluptuous-serialize.spec ++++++
--- /var/tmp/diff_new_pack.ZYlO7v/_old 2020-02-07 15:56:35.007579408 +0100
+++ /var/tmp/diff_new_pack.ZYlO7v/_new 2020-02-07 15:56:35.007579408 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-voluptuous-serialize
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,24 +19,23 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
Name: python-voluptuous-serialize
-Version: 2.2.0
+Version: 2.3.0
Release: 0
Summary: Python module to convert voluptuous schemas to dictionaries
License: Apache-2.0
Group: Development/Languages/Python
-Url: http://github.com/balloob/voluptuous-serialize
+URL: https://github.com/balloob/voluptuous-serialize
Source:
https://files.pythonhosted.org/packages/source/v/voluptuous-serialize/voluptuous-serialize-%{version}.tar.gz
Source99:
https://raw.githubusercontent.com/balloob/voluptuous-serialize/master/LICENSE
BuildRequires: %{python_module setuptools}
+BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: python-voluptuous
+BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module voluptuous}
# /SECTION
-BuildRequires: fdupes
-Requires: python-voluptuous
-BuildArch: noarch
-
%python_subpackages
%description
@@ -44,7 +43,7 @@
%prep
%setup -q -n voluptuous-serialize-%{version}
-cp %{S:99} .
+cp %{SOURCE99} .
%build
%python_build
@@ -54,7 +53,7 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-%python_exec -m pytest tests
+%pytest tests
%files %{python_files}
%doc README.md
++++++ voluptuous-serialize-2.2.0.tar.gz -> voluptuous-serialize-2.3.0.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/voluptuous-serialize-2.2.0/PKG-INFO
new/voluptuous-serialize-2.3.0/PKG-INFO
--- old/voluptuous-serialize-2.2.0/PKG-INFO 2019-08-08 00:32:44.000000000
+0200
+++ new/voluptuous-serialize-2.3.0/PKG-INFO 2019-10-01 06:55:30.000000000
+0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: voluptuous-serialize
-Version: 2.2.0
+Version: 2.3.0
Summary: Convert voluptuous schemas to dictionaries
Home-page: http://github.com/balloob/voluptuous-serialize
Author: Paulus Schoutsen
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/voluptuous-serialize-2.2.0/README.md
new/voluptuous-serialize-2.3.0/README.md
--- old/voluptuous-serialize-2.2.0/README.md 2018-07-26 08:57:55.000000000
+0200
+++ new/voluptuous-serialize-2.3.0/README.md 2019-10-01 06:55:27.000000000
+0200
@@ -42,3 +42,20 @@
```
See the tests for more examples.
+
+## Custom serializer
+
+You can pass a custom serializer to be able to process custom validators. If
the serializer returns `UNSUPPORTED`, it will return to normal processing.
+
+```python
+
+from voluptuous_serialize import UNSUPPORTED, convert
+
+def custom_convert(value):
+ if value is my_custom_validator:
+ return {'type': 'custom_validator'}
+
+ return UNSUPPORTED
+
+convert(value, custom_serializer=custom_convert)
+```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/voluptuous-serialize-2.2.0/setup.py
new/voluptuous-serialize-2.3.0/setup.py
--- old/voluptuous-serialize-2.2.0/setup.py 2019-08-08 00:32:28.000000000
+0200
+++ new/voluptuous-serialize-2.3.0/setup.py 2019-10-01 06:55:27.000000000
+0200
@@ -1,7 +1,7 @@
from setuptools import setup
setup(name='voluptuous-serialize',
- version='2.2.0',
+ version='2.3.0',
description='Convert voluptuous schemas to dictionaries',
url='http://github.com/balloob/voluptuous-serialize',
author='Paulus Schoutsen',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/voluptuous-serialize-2.2.0/voluptuous_serialize/__init__.py
new/voluptuous-serialize-2.3.0/voluptuous_serialize/__init__.py
--- old/voluptuous-serialize-2.2.0/voluptuous_serialize/__init__.py
2019-08-08 00:32:21.000000000 +0200
+++ new/voluptuous-serialize-2.3.0/voluptuous_serialize/__init__.py
2019-10-01 06:55:27.000000000 +0200
@@ -11,13 +11,19 @@
bool: 'boolean',
}
+UNSUPPORTED = object()
-def convert(schema):
+def convert(schema, *, custom_serializer=None):
"""Convert a voluptuous schema to a dictionary."""
# pylint: disable=too-many-return-statements,too-many-branches
if isinstance(schema, vol.Schema):
schema = schema.schema
+ if custom_serializer:
+ val = custom_serializer(schema)
+ if val is not UNSUPPORTED:
+ return val
+
if isinstance(schema, Mapping):
val = []
@@ -29,7 +35,7 @@
else:
pkey = key
- pval = convert(value)
+ pval = convert(value, custom_serializer=custom_serializer)
pval['name'] = pkey
if description is not None:
pval['description'] = description
@@ -47,7 +53,7 @@
if isinstance(schema, vol.All):
val = {}
for validator in schema.validators:
- val.update(convert(validator))
+ val.update(convert(validator, custom_serializer=custom_serializer))
return val
if isinstance(schema, (vol.Clamp, vol.Range)):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/voluptuous-serialize-2.2.0/voluptuous_serialize.egg-info/PKG-INFO
new/voluptuous-serialize-2.3.0/voluptuous_serialize.egg-info/PKG-INFO
--- old/voluptuous-serialize-2.2.0/voluptuous_serialize.egg-info/PKG-INFO
2019-08-08 00:32:44.000000000 +0200
+++ new/voluptuous-serialize-2.3.0/voluptuous_serialize.egg-info/PKG-INFO
2019-10-01 06:55:30.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: voluptuous-serialize
-Version: 2.2.0
+Version: 2.3.0
Summary: Convert voluptuous schemas to dictionaries
Home-page: http://github.com/balloob/voluptuous-serialize
Author: Paulus Schoutsen