openSUSE Commits
Threads by month
- ----- 2024 -----
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
October 2019
- 1 participants
- 2293 discussions
Hello community,
here is the log from the commit of package python-xdis for openSUSE:Factory checked in at 2019-10-31 18:18:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-xdis (Old)
and /work/SRC/openSUSE:Factory/.python-xdis.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-xdis"
Thu Oct 31 18:18:11 2019 rev:4 rq:744161 version:4.1.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-xdis/python-xdis.changes 2019-10-04 11:22:44.944893902 +0200
+++ /work/SRC/openSUSE:Factory/.python-xdis.new.2990/python-xdis.changes 2019-10-31 18:18:29.770211811 +0100
@@ -1,0 +2,14 @@
+Wed Oct 30 12:39:55 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 4.1.1:
+ * Fix unmarshaling 3.4+ object_ref bugs. A big thanks to Armin Rigo of the PyPy team.
+ * Add Pypy 3.6+ disassembly, e.g. pypy3.6-7.1.0 and pypy3.6-7.1.1
+ * Add Python 3.7.5, 2.7.16, 2.7.17rc1, and 2.7.15candidate1 as a valid releases
+ * convert unmarshal if .. elif code to a dictionary lookup with function entries
+ * Handle newer Python importlib - thanks to laike9m
+ * Add early bytecodes: 1.0, 1.1, 1.2, and 1.6. Going off of pycdc bytecode since this is the only bytecode for these versions I know of
+ * Fix bug in Python 3.x decompiling 2.x that contains strings with non-ascii characters
+ * More generally, better handling of non-ascii Python 2 strings in both input and output in Python 3
+ * pypy 3.6-7.1.0 tolerance
+
+-------------------------------------------------------------------
Old:
----
4.0.4.tar.gz
New:
----
4.1.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-xdis.spec ++++++
--- /var/tmp/diff_new_pack.8cbR2K/_old 2019-10-31 18:18:31.578213683 +0100
+++ /var/tmp/diff_new_pack.8cbR2K/_new 2019-10-31 18:18:31.598213705 +0100
@@ -18,11 +18,10 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-xdis
-Version: 4.0.4
+Version: 4.1.1
Release: 0
Summary: Python cross-version byte-code disassembler and marshal routines
License: GPL-2.0-only
-Group: Development/Languages/Python
URL: https://github.com/rocky/python-xdis/
Source: https://github.com/rocky/python-xdis/archive/%{version}.tar.gz
BuildRequires: %{python_module setuptools}
++++++ 4.0.4.tar.gz -> 4.1.1.tar.gz ++++++
++++ 2454 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-xmldiff for openSUSE:Factory checked in at 2019-10-31 18:18:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-xmldiff (Old)
and /work/SRC/openSUSE:Factory/.python-xmldiff.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-xmldiff"
Thu Oct 31 18:18:10 2019 rev:18 rq:744160 version:2.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-xmldiff/python-xmldiff.changes 2019-05-06 21:17:03.337042195 +0200
+++ /work/SRC/openSUSE:Factory/.python-xmldiff.new.2990/python-xmldiff.changes 2019-10-31 18:18:25.766207667 +0100
@@ -1,0 +2,7 @@
+Wed Oct 30 12:37:21 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 2.4:
+ * Added an option to pass pairs of (element, attr) as unique
+ attributes for tree matching.
+
+-------------------------------------------------------------------
Old:
----
xmldiff-2.3.tar.gz
New:
----
xmldiff-2.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-xmldiff.spec ++++++
--- /var/tmp/diff_new_pack.KxjsrO/_old 2019-10-31 18:18:26.986208929 +0100
+++ /var/tmp/diff_new_pack.KxjsrO/_new 2019-10-31 18:18:26.998208943 +0100
@@ -19,11 +19,10 @@
%define oldpython python
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-xmldiff
-Version: 2.3
+Version: 2.4
Release: 0
Summary: Tree to tree correction between XML documents
License: MIT
-Group: Development/Languages/Python
URL: https://github.com/Shoobx/xmldiff
Source: https://files.pythonhosted.org/packages/source/x/xmldiff/xmldiff-%{version}…
BuildRequires: %{python_module setuptools}
++++++ xmldiff-2.3.tar.gz -> xmldiff-2.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/CHANGES.rst new/xmldiff-2.4/CHANGES.rst
--- old/xmldiff-2.3/CHANGES.rst 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/CHANGES.rst 2019-10-09 11:40:55.000000000 +0200
@@ -1,6 +1,13 @@
Changes
=======
+2.4 (2019-10-09)
+----------------
+
+- Added an option to pass pairs of (element, attr) as unique
+ attributes for tree matching. Exposed this option on the command
+ line, too.
+
2.3 (2019-02-27)
----------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/PKG-INFO new/xmldiff-2.4/PKG-INFO
--- old/xmldiff-2.3/PKG-INFO 2019-02-27 12:49:43.000000000 +0100
+++ new/xmldiff-2.4/PKG-INFO 2019-10-09 11:40:56.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: xmldiff
-Version: 2.3
+Version: 2.4
Summary: Creates diffs of XML files
Home-page: https://github.com/Shoobx/xmldiff
Author: Lennart Regebro
@@ -18,7 +18,7 @@
``xmldiff`` is a library and a command-line utility for making diffs out of XML.
This may seem like something that doesn't need a dedicated utility,
but change detection in hierarchical data is very different from change detection in flat data.
- XML type formats are also not only used for computer readable0 data,
+ XML type formats are also not only used for computer readable data,
it is also often used as a format for hierarchical data that can be rendered into human readable formats.
A traditional diff on such a format would tell you line by line the differences,
but this would not be be readable by a human.
@@ -40,7 +40,7 @@
There is also a command to patch a file with the output from the ``xmldiff`` command::
- $ xmldiff file.diff file1.xml
+ $ xmlpatch file.diff file1.xml
There is a simple API for using ``xmldiff`` as a library::
@@ -52,9 +52,9 @@
There is also a method ``diff_trees()`` that take two lxml trees,
and a method ``diff_texts()`` that will take strings containing XML.
- Similarily, there is ``patch_file()`` ``patch_text()`` and ``patch_tree()``::
+ Similarly, there is ``patch_file()`` ``patch_text()`` and ``patch_tree()``::
- result = main.diff_file('file.diff', 'file1.xml')
+ result = main.patch_file('file.diff', 'file1.xml')
Changes from ``xmldiff`` 0.6/1.x
@@ -77,7 +77,7 @@
* An output format compatible with 0.6/1.x is also available.
- * 2.0 is urrently significantly slower than ``xmldiff`` 0.6/1.x,
+ * 2.0 is currently significantly slower than ``xmldiff`` 0.6/1.x,
but this will change in the future.
Currently we make no effort to make ``xmldiff`` 2.0 fast,
we concentrate on making it correct and usable.
@@ -86,16 +86,25 @@
Contributors
------------
- * Lennart Regebro, lregebro(a)shoobx.com (main author)
+ * Lennart Regebro, regebro(a)gmail.com (main author)
* Stephan Richter, srichter(a)shoobx.com
+ * Albertas Agejevas, alga(a)shoobx.com
+
The diff algorithm is based on "`Change Detection in Hierarchically Structured Information <http://ilpubs.stanford.edu/115/1/1995-46.pdf>`_",
and the text diff is using Google's ``diff_match_patch`` algorithm.
Changes
=======
+ 2.4 (2019-10-09)
+ ----------------
+
+ - Added an option to pass pairs of (element, attr) as unique
+ attributes for tree matching. Exposed this option on the command
+ line, too.
+
2.3 (2019-02-27)
----------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/README.rst new/xmldiff-2.4/README.rst
--- old/xmldiff-2.3/README.rst 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/README.rst 2019-10-09 11:40:55.000000000 +0200
@@ -10,7 +10,7 @@
``xmldiff`` is a library and a command-line utility for making diffs out of XML.
This may seem like something that doesn't need a dedicated utility,
but change detection in hierarchical data is very different from change detection in flat data.
-XML type formats are also not only used for computer readable0 data,
+XML type formats are also not only used for computer readable data,
it is also often used as a format for hierarchical data that can be rendered into human readable formats.
A traditional diff on such a format would tell you line by line the differences,
but this would not be be readable by a human.
@@ -32,7 +32,7 @@
There is also a command to patch a file with the output from the ``xmldiff`` command::
- $ xmldiff file.diff file1.xml
+ $ xmlpatch file.diff file1.xml
There is a simple API for using ``xmldiff`` as a library::
@@ -44,9 +44,9 @@
There is also a method ``diff_trees()`` that take two lxml trees,
and a method ``diff_texts()`` that will take strings containing XML.
-Similarily, there is ``patch_file()`` ``patch_text()`` and ``patch_tree()``::
+Similarly, there is ``patch_file()`` ``patch_text()`` and ``patch_tree()``::
- result = main.diff_file('file.diff', 'file1.xml')
+ result = main.patch_file('file.diff', 'file1.xml')
Changes from ``xmldiff`` 0.6/1.x
@@ -69,7 +69,7 @@
* An output format compatible with 0.6/1.x is also available.
- * 2.0 is urrently significantly slower than ``xmldiff`` 0.6/1.x,
+ * 2.0 is currently significantly slower than ``xmldiff`` 0.6/1.x,
but this will change in the future.
Currently we make no effort to make ``xmldiff`` 2.0 fast,
we concentrate on making it correct and usable.
@@ -78,9 +78,11 @@
Contributors
------------
- * Lennart Regebro, lregebro(a)shoobx.com (main author)
+ * Lennart Regebro, regebro(a)gmail.com (main author)
* Stephan Richter, srichter(a)shoobx.com
+ * Albertas Agejevas, alga(a)shoobx.com
+
The diff algorithm is based on "`Change Detection in Hierarchically Structured Information <http://ilpubs.stanford.edu/115/1/1995-46.pdf>`_",
and the text diff is using Google's ``diff_match_patch`` algorithm.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/docs/source/advanced.rst new/xmldiff-2.4/docs/source/advanced.rst
--- old/xmldiff-2.3/docs/source/advanced.rst 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/docs/source/advanced.rst 2019-10-09 11:40:55.000000000 +0200
@@ -120,7 +120,7 @@
The XSLT template above of course only handles a few cases,
like inserted formatting and insert and delete tags (used below).
-A more complete XSLT file is included `here <file:_static/htmlformatter.xslt>`_.
+A more complete XSLT file is included `here <https://github.com/Shoobx/xmldiff/blob/master/docs/source/static/htmlformat…>`_.
Now use that formatter in the diffing:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/docs/source/api.rst new/xmldiff-2.4/docs/source/api.rst
--- old/xmldiff-2.3/docs/source/api.rst 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/docs/source/api.rst 2019-10-09 11:40:55.000000000 +0200
@@ -71,7 +71,7 @@
``fast_match``:
By default ``xmldiff`` will compare each node from one tree with all nodes from the other tree.
It will then pick the one node that matches best as the match,
- if that match passes the match treshold ``F`` (see above).
+ if that match passes the match threshold ``F`` (see above).
If fast_match is true ``xmldiff`` will first make a faster run,
trying to find chains of matching nodes,
@@ -98,7 +98,7 @@
and no guarantees are done that the output of one version will be the same as the output of any previous version.
The actions of the edit script can be in a different order or replaced by equivalent actions dependingon the version of ``xmldiff``,
but if the Edit Script does not correctly transform one XML tree into another,
-thas is regarded as a bug.
+that is regarded as a bug.
This means that the output of the ``xml`` format also may change from version to version.
There is no "correct" solution to how that output should look,
as the same change can be represented in several different ways.
@@ -107,11 +107,17 @@
Unique Attributes
-----------------
-The ``uniqueattrs`` argument is a list of strings specifying attributes that uniquely identify a node in the document.
+The ``uniqueattrs`` argument is a list of strings or ``(tag, attribute)`` tuples
+specifying attributes that uniquely identify a node in the document.
This is used by the differ when trying to match nodes.
If one node in the left tree has a this attribute,
the node in the right three with the same value for that attribute will match,
regardless of other attributes, child nodes or text content.
+Respectively, if the values of the attribute on the nodes in question are different,
+or if only one of the nodes has this attribute,
+the nodes will not match regardless of their structural similarity.
+In case the attribute is a tuple, the attribute match applies only if both nodes
+have the given tag.
The default is ``['{http://www.w3.org/XML/1998/namespace}id']``,
which is the ``xml:id`` attribute.
@@ -463,7 +469,7 @@
* ``xmldiff.main.patch_tree()`` takes as input one edit script,
(ie a list of actions, see above) and one ``lxml`` tree,
- and returnes a patched ``lxml`` tree.
+ and returns a patched ``lxml`` tree.
They all return a string with the patched XML tree.
There are currently no configuration parameters for these commands.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/docs/source/installation.rst new/xmldiff-2.4/docs/source/installation.rst
--- old/xmldiff-2.3/docs/source/installation.rst 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/docs/source/installation.rst 2019-10-09 11:40:55.000000000 +0200
@@ -13,7 +13,7 @@
That's it, ``xmldiff`` should now be available for you to use.
-Several Unix distributions also include ``xmldiff`` so you can install it with your distrubutions package manager.
+Several Unix distributions also include ``xmldiff`` so you can install it with your distributions package manager.
Be aware that currently most distribute an earlier version,
typically 0.6.10, which is very different from 2.x,
which this documentation is written for.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/setup.py new/xmldiff-2.4/setup.py
--- old/xmldiff-2.3/setup.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/setup.py 2019-10-09 11:40:55.000000000 +0200
@@ -1,7 +1,7 @@
from io import open
from setuptools import setup, find_packages
-version = '2.3'
+version = '2.4'
with open('README.rst', 'rt', encoding='utf8') as readme:
description = readme.read()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/tests/test_diff.py new/xmldiff-2.4/tests/test_diff.py
--- old/xmldiff-2.3/tests/test_diff.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/tests/test_diff.py 2019-10-09 11:40:55.000000000 +0200
@@ -13,6 +13,20 @@
from .testing import compare_elements
+def dedent(string):
+ """Remove the maximum common indent of the lines making up the string."""
+ lines = string.splitlines()
+ indent = min(
+ len(line) - len(line.lstrip())
+ for line in lines
+ if line
+ )
+ return "\n".join(
+ line[indent:] if line else line
+ for line in lines
+ )
+
+
class APITests(unittest.TestCase):
left = u"<document><p>Text</p><p>More</p></document>"
right = u"<document><p>Tokst</p><p>More</p></document>"
@@ -302,6 +316,91 @@
self.assertEqual(differ.child_ratio(left, right), 1.0)
self.assertEqual(differ.node_ratio(left, right), 0)
+ def test_compare_with_uniqueattrs(self):
+ # `uniqueattrs` can be pairs of (tag, attribute) as well as just string
+ # attributes.
+ left = dedent(u"""\
+ <document>
+ <story firstPageTemplate="FirstPage">
+ <section name="oldfirst" ref="1" single-ref="1">
+ <para>First paragraph</para>
+ <para>This is the second paragraph</para>
+ </section>
+ <section ref="3" single-ref="3" name="tobedeleted">
+ <para>Det tredje stycket</para>
+ </section>
+ <section name="last" ref="4" single-ref="4">
+ <para>Last paragraph</para>
+ </section>
+ </story>
+ </document>
+ """)
+
+ right = dedent(u"""\
+ <document>
+ <story firstPageTemplate="FirstPage">
+ <section name="newfirst" ref="1" single-ref="1">
+ <para>First paragraph</para>
+ </section>
+ <section name="oldfirst" single-ref="2" ref="2">
+ <para>This is the second</para>
+ <para>Det tredje stycket</para>
+ </section>
+ <section single-ref="4" ref="4">
+ <para>Last paragraph</para>
+ </section>
+ <subsection name="oldfirst" ref="1" single-ref="1">
+ <para>First paragraph</para>
+ <para>This is the second paragraph</para>
+ </subsection>
+ </story>
+ </document>
+ """)
+
+ differ = Differ(uniqueattrs=[
+ ('section', 'name'),
+ '{http://www.w3.org/XML/1998/namespace}id'
+ ])
+ differ.set_trees(etree.fromstring(left), etree.fromstring(right))
+ differ.match()
+
+ # Make some choice comparisons here.
+
+ left = differ.left.xpath('/document/story/section[1]')[0]
+ right = differ.right.xpath('/document/story/section[1]')[0]
+
+ # These are very similar
+ self.assertEqual(differ.leaf_ratio(left, right), 0.90625)
+ # And one out of two children in common
+ self.assertEqual(differ.child_ratio(left, right), 0.5)
+ # But different names, hence 0 as match
+ self.assertEqual(differ.node_ratio(left, right), 0)
+
+ # Here's the ones with the same tag and name attribute:
+ left = differ.left.xpath('/document/story/section[1]')[0]
+ right = differ.right.xpath('/document/story/section[2]')[0]
+
+ # Only one out of two children in common
+ self.assertEqual(differ.child_ratio(left, right), 0)
+ # But same id's, hence 1 as match
+ self.assertEqual(differ.node_ratio(left, right), 1.0)
+
+ # The last ones are completely similar, but only one
+ # has an name, so they do not match.
+ left = differ.left.xpath('/document/story/section[3]')[0]
+ right = differ.right.xpath('/document/story/section[3]')[0]
+ self.assertAlmostEqual(differ.leaf_ratio(left, right), 0.78260869565)
+ self.assertEqual(differ.child_ratio(left, right), 1.0)
+ self.assertEqual(differ.node_ratio(left, right), 0)
+
+ # Now these are structurally similar, have the same name, but
+ # one of them is not a section, so the uniqueattr does not match
+ left = differ.left.xpath('/document/story/section[1]')[0]
+ right = differ.right.xpath('/document/story/subsection[1]')[0]
+ self.assertAlmostEqual(differ.leaf_ratio(left, right), 1.0)
+ self.assertEqual(differ.child_ratio(left, right), 0.5)
+ self.assertAlmostEqual(differ.node_ratio(left, right), 0.75)
+
def test_compare_node_rename(self):
left = u"""<document>
<para>First paragraph</para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff/_diff_match_patch_py2.py new/xmldiff-2.4/xmldiff/_diff_match_patch_py2.py
--- old/xmldiff-2.3/xmldiff/_diff_match_patch_py2.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/xmldiff/_diff_match_patch_py2.py 2019-10-09 11:40:55.000000000 +0200
@@ -959,7 +959,7 @@
pointer += 1
text_insert = text_insert[commonlength:]
text_delete = text_delete[commonlength:]
- # Factor out any common suffixies.
+ # Factor out any common suffixes.
commonlength = self.diff_commonSuffix(text_insert, text_delete)
if commonlength != 0:
diffs[pointer] = (diffs[pointer][0], text_insert[-commonlength:] +
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff/_diff_match_patch_py3.py new/xmldiff-2.4/xmldiff/_diff_match_patch_py3.py
--- old/xmldiff-2.3/xmldiff/_diff_match_patch_py3.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/xmldiff/_diff_match_patch_py3.py 2019-10-09 11:40:55.000000000 +0200
@@ -957,7 +957,7 @@
pointer += 1
text_insert = text_insert[commonlength:]
text_delete = text_delete[commonlength:]
- # Factor out any common suffixies.
+ # Factor out any common suffixes.
commonlength = self.diff_commonSuffix(text_insert, text_delete)
if commonlength != 0:
diffs[pointer] = (diffs[pointer][0], text_insert[-commonlength:] +
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff/diff.py new/xmldiff-2.4/xmldiff/diff.py
--- old/xmldiff-2.3/xmldiff/diff.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/xmldiff/diff.py 2019-10-09 11:40:55.000000000 +0200
@@ -14,8 +14,9 @@
if F is None:
F = 0.5
self.F = F
- # uniquattrs is a list of attributes that uniquely identifies a node
- # inside a document. Defaults to 'xml:id'.
+ # uniqueattrs is a list of attributes or (tag, attribute) pairs
+ # that uniquely identifies a node inside a document. Defaults
+ # to 'xml:id'.
if uniqueattrs is None:
uniqueattrs = ['{http://www.w3.org/XML/1998/namespace}id']
self.uniqueattrs = uniqueattrs
@@ -162,6 +163,12 @@
return 0
for attr in self.uniqueattrs:
+ if not isinstance(attr, str):
+ # If it's actually a sequence of (tag, attr), the tags must
+ # match first.
+ tag, attr = attr
+ if tag != left.tag or tag != right.tag:
+ continue
if attr in left.attrib or attr in right.attrib:
# One of the nodes have a unique attribute, we check only that.
# If only one node has it, it means they are not the same.
@@ -258,6 +265,8 @@
yield actions.RenameAttrib(left_xpath, lk, rk)
# Remove from list of new attributes
new_keys.remove(rk)
+ # Delete used attribute from map of attributes
+ del newattrmap[value]
# Update left node
left.attrib[rk] = value
del left.attrib[lk]
@@ -345,7 +354,7 @@
# Go over those children that are not in order:
for lchild in lchildren:
if lchild in self._inorder:
- # Alrady aligned
+ # Already aligned
continue
rchild = self._l2rmap[id(lchild)]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff/formatting.py new/xmldiff-2.4/xmldiff/formatting.py
--- old/xmldiff-2.3/xmldiff/formatting.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/xmldiff/formatting.py 2019-10-09 11:40:55.000000000 +0200
@@ -369,7 +369,7 @@
def _xpath(self, node, xpath):
# This method finds an element with xpath and makes sure that
# one and exactly one element is found. This is to protect against
- # formatting a diff on the wrong tree, or against using ambigous
+ # formatting a diff on the wrong tree, or against using ambiguous
# edit script xpaths.
if xpath[0] == '/':
root = True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff/main.py new/xmldiff-2.4/xmldiff/main.py
--- old/xmldiff-2.3/xmldiff/main.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/xmldiff/main.py 2019-10-09 11:40:55.000000000 +0200
@@ -71,12 +71,14 @@
parser.add_argument('-p', '--pretty-print', action='store_true',
help='Try to make XML output more readable.')
parser.add_argument('-F', type=float,
- help='A value betwen 0 and 1 that determines how '
+ help='A value between 0 and 1 that determines how '
'similar nodes must be to match.')
parser.add_argument('--unique-attributes', type=str, nargs='?',
default='{http://www.w3.org/XML/1998/namespace}id',
help='A comma separated list of attributes '
- 'that uniquely identify a node. Can be empty.')
+ 'that uniquely identify a node. Can be empty. '
+ 'Unique attributes for certain elements can '
+ 'be specified in the format {NS}element@attr.')
parser.add_argument('--ratio-mode', default='fast',
choices={'accurate', 'fast', 'faster'},
help='Choose the node comparison optimization.')
@@ -85,6 +87,15 @@
return parser
+def _parse_uniqueattrs(uniqueattrs):
+ if uniqueattrs is None:
+ return []
+ return [
+ attr if '@' not in attr else attr.split('@', 1)
+ for attr in uniqueattrs.split(',')
+ ]
+
+
def diff_command(args=None):
parser = make_diff_parser()
args = parser.parse_args(args=args)
@@ -97,15 +108,10 @@
formatter = FORMATTERS[args.formatter](normalize=normalize,
pretty_print=args.pretty_print)
- if args.unique_attributes is None:
- uniqueattrs = []
- else:
- uniqueattrs = args.unique_attributes.split(',')
-
diff_options = {'ratio_mode': args.ratio_mode,
'F': args.F,
'fast_match': args.fast_match,
- 'uniqueattrs': uniqueattrs,
+ 'uniqueattrs': _parse_uniqueattrs(args.unique_attributes),
}
result = diff_files(args.file1, args.file2, diff_options=diff_options,
formatter=formatter)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff/utils.py new/xmldiff-2.4/xmldiff/utils.py
--- old/xmldiff-2.3/xmldiff/utils.py 2019-02-27 12:49:42.000000000 +0100
+++ new/xmldiff-2.4/xmldiff/utils.py 2019-10-09 11:40:55.000000000 +0200
@@ -58,7 +58,7 @@
lmax = len(left)
rmax = len(right)
- furtherst = {1: (0, [])}
+ furthest = {1: (0, [])}
if not lmax + rmax:
# The sequences are equal
@@ -68,13 +68,13 @@
for d in range(0, lmax + rmax + 1):
for k in range(-d, d + 1, 2):
if (k == -d or
- (k != d and furtherst[k - 1][0] < furtherst[k + 1][0])):
+ (k != d and furthest[k - 1][0] < furthest[k + 1][0])):
# Go down
- old_x, history = furtherst[k + 1]
+ old_x, history = furthest[k + 1]
x = old_x
else:
# Go left
- old_x, history = furtherst[k - 1]
+ old_x, history = furthest[k - 1]
x = old_x + 1
# Copy the history
@@ -92,7 +92,7 @@
return [(e, e) for e in range(start)] + history + \
list(zip(range(lend, lslen), range(rend, rslen)))
else:
- furtherst[k] = (x, history)
+ furthest[k] = (x, history)
WHITESPACE = re.compile(u'\\s+', flags=re.MULTILINE)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xmldiff-2.3/xmldiff.egg-info/PKG-INFO new/xmldiff-2.4/xmldiff.egg-info/PKG-INFO
--- old/xmldiff-2.3/xmldiff.egg-info/PKG-INFO 2019-02-27 12:49:43.000000000 +0100
+++ new/xmldiff-2.4/xmldiff.egg-info/PKG-INFO 2019-10-09 11:40:56.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: xmldiff
-Version: 2.3
+Version: 2.4
Summary: Creates diffs of XML files
Home-page: https://github.com/Shoobx/xmldiff
Author: Lennart Regebro
@@ -18,7 +18,7 @@
``xmldiff`` is a library and a command-line utility for making diffs out of XML.
This may seem like something that doesn't need a dedicated utility,
but change detection in hierarchical data is very different from change detection in flat data.
- XML type formats are also not only used for computer readable0 data,
+ XML type formats are also not only used for computer readable data,
it is also often used as a format for hierarchical data that can be rendered into human readable formats.
A traditional diff on such a format would tell you line by line the differences,
but this would not be be readable by a human.
@@ -40,7 +40,7 @@
There is also a command to patch a file with the output from the ``xmldiff`` command::
- $ xmldiff file.diff file1.xml
+ $ xmlpatch file.diff file1.xml
There is a simple API for using ``xmldiff`` as a library::
@@ -52,9 +52,9 @@
There is also a method ``diff_trees()`` that take two lxml trees,
and a method ``diff_texts()`` that will take strings containing XML.
- Similarily, there is ``patch_file()`` ``patch_text()`` and ``patch_tree()``::
+ Similarly, there is ``patch_file()`` ``patch_text()`` and ``patch_tree()``::
- result = main.diff_file('file.diff', 'file1.xml')
+ result = main.patch_file('file.diff', 'file1.xml')
Changes from ``xmldiff`` 0.6/1.x
@@ -77,7 +77,7 @@
* An output format compatible with 0.6/1.x is also available.
- * 2.0 is urrently significantly slower than ``xmldiff`` 0.6/1.x,
+ * 2.0 is currently significantly slower than ``xmldiff`` 0.6/1.x,
but this will change in the future.
Currently we make no effort to make ``xmldiff`` 2.0 fast,
we concentrate on making it correct and usable.
@@ -86,16 +86,25 @@
Contributors
------------
- * Lennart Regebro, lregebro(a)shoobx.com (main author)
+ * Lennart Regebro, regebro(a)gmail.com (main author)
* Stephan Richter, srichter(a)shoobx.com
+ * Albertas Agejevas, alga(a)shoobx.com
+
The diff algorithm is based on "`Change Detection in Hierarchically Structured Information <http://ilpubs.stanford.edu/115/1/1995-46.pdf>`_",
and the text diff is using Google's ``diff_match_patch`` algorithm.
Changes
=======
+ 2.4 (2019-10-09)
+ ----------------
+
+ - Added an option to pass pairs of (element, attr) as unique
+ attributes for tree matching. Exposed this option on the command
+ line, too.
+
2.3 (2019-02-27)
----------------
1
0
Hello community,
here is the log from the commit of package python-xxhash for openSUSE:Factory checked in at 2019-10-31 18:18:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-xxhash (Old)
and /work/SRC/openSUSE:Factory/.python-xxhash.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-xxhash"
Thu Oct 31 18:18:08 2019 rev:5 rq:744157 version:1.4.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-xxhash/python-xxhash.changes 2019-09-09 12:34:17.553483047 +0200
+++ /work/SRC/openSUSE:Factory/.python-xxhash.new.2990/python-xxhash.changes 2019-10-31 18:18:23.810205642 +0100
@@ -1,0 +2,6 @@
+Wed Oct 30 12:26:46 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.4.2:
+ * Fixed: setup.py fails when reading README.rst and the default encoding is not UTF-8
+
+-------------------------------------------------------------------
Old:
----
xxhash-1.4.1.tar.gz
New:
----
xxhash-1.4.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-xxhash.spec ++++++
--- /var/tmp/diff_new_pack.NVEohK/_old 2019-10-31 18:18:24.514206371 +0100
+++ /var/tmp/diff_new_pack.NVEohK/_new 2019-10-31 18:18:24.534206391 +0100
@@ -18,11 +18,10 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-xxhash
-Version: 1.4.1
+Version: 1.4.2
Release: 0
Summary: Python binding for xxHash
License: BSD-2-Clause
-Group: Development/Languages/Python
URL: https://github.com/ifduyue/python-xxhash
Source: https://files.pythonhosted.org/packages/source/x/xxhash/xxhash-%{version}.t…
BuildRequires: %{python_module devel}
++++++ xxhash-1.4.1.tar.gz -> xxhash-1.4.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xxhash-1.4.1/CHANGELOG.rst new/xxhash-1.4.2/CHANGELOG.rst
--- old/xxhash-1.4.1/CHANGELOG.rst 2019-08-27 07:03:44.000000000 +0200
+++ new/xxhash-1.4.2/CHANGELOG.rst 2019-10-13 09:31:55.000000000 +0200
@@ -1,6 +1,11 @@
CHANGELOG
-----------
+v1.4.2 2019-10-13
+~~~~~~~~~~~~~~~~~
+
+- Fixed: setup.py fails when reading README.rst and the default encoding is not UTF-8
+
v1.4.1 2019-08-27
~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xxhash-1.4.1/PKG-INFO new/xxhash-1.4.2/PKG-INFO
--- old/xxhash-1.4.1/PKG-INFO 2019-08-27 07:06:02.000000000 +0200
+++ new/xxhash-1.4.2/PKG-INFO 2019-10-13 09:34:08.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: xxhash
-Version: 1.4.1
+Version: 1.4.2
Summary: Python binding for xxHash
Home-page: https://github.com/ifduyue/python-xxhash
Author: Yue Du
@@ -89,7 +89,7 @@
>>> import xxhash
>>> xxhash.VERSION
- '1.4.0'
+ '1.4.2'
>>> xxhash.XXHASH_VERSION
'0.7.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xxhash-1.4.1/README.rst new/xxhash-1.4.2/README.rst
--- old/xxhash-1.4.1/README.rst 2019-08-27 07:03:44.000000000 +0200
+++ new/xxhash-1.4.2/README.rst 2019-10-13 09:31:55.000000000 +0200
@@ -81,7 +81,7 @@
>>> import xxhash
>>> xxhash.VERSION
- '1.4.0'
+ '1.4.2'
>>> xxhash.XXHASH_VERSION
'0.7.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xxhash-1.4.1/setup.py new/xxhash-1.4.2/setup.py
--- old/xxhash-1.4.1/setup.py 2019-08-27 07:03:44.000000000 +0200
+++ new/xxhash-1.4.2/setup.py 2019-10-13 09:31:55.000000000 +0200
@@ -3,6 +3,8 @@
from setuptools import setup, Extension
import os
+import codecs
+
with open('xxhash/__init__.py') as f:
for line in f:
@@ -28,11 +30,17 @@
)
]
+# Read README with explicit encoding
+f = codecs.open('README.rst', encoding='utf-8', mode='r')
+long_description = f.read()
+f.close()
+
+
setup(
name='xxhash',
version=VERSION,
description="Python binding for xxHash",
- long_description=open('README.rst', 'r').read(),
+ long_description=long_description,
long_description_content_type="text/x-rst",
author='Yue Du',
author_email='ifduyue(a)gmail.com',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xxhash-1.4.1/xxhash/__init__.py new/xxhash-1.4.2/xxhash/__init__.py
--- old/xxhash-1.4.1/xxhash/__init__.py 2019-08-27 07:03:44.000000000 +0200
+++ new/xxhash-1.4.2/xxhash/__init__.py 2019-10-13 09:31:55.000000000 +0200
@@ -4,7 +4,7 @@
xxh64_hexdigest,
XXHASH_VERSION)
-VERSION = '1.4.1'
+VERSION = '1.4.2'
__all__ = ['xxh32', 'xxh32_digest', 'xxh32_intdigest', 'xxh32_hexdigest',
'xxh64', 'xxh64_digest', 'xxh64_intdigest', 'xxh64_hexdigest',
'VERSION', 'XXHASH_VERSION']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xxhash-1.4.1/xxhash.egg-info/PKG-INFO new/xxhash-1.4.2/xxhash.egg-info/PKG-INFO
--- old/xxhash-1.4.1/xxhash.egg-info/PKG-INFO 2019-08-27 07:06:02.000000000 +0200
+++ new/xxhash-1.4.2/xxhash.egg-info/PKG-INFO 2019-10-13 09:34:08.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: xxhash
-Version: 1.4.1
+Version: 1.4.2
Summary: Python binding for xxHash
Home-page: https://github.com/ifduyue/python-xxhash
Author: Yue Du
@@ -89,7 +89,7 @@
>>> import xxhash
>>> xxhash.VERSION
- '1.4.0'
+ '1.4.2'
>>> xxhash.XXHASH_VERSION
'0.7.1'
1
0
Hello community,
here is the log from the commit of package python-yamllint for openSUSE:Factory checked in at 2019-10-31 18:18:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-yamllint (Old)
and /work/SRC/openSUSE:Factory/.python-yamllint.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-yamllint"
Thu Oct 31 18:18:05 2019 rev:7 rq:744156 version:1.18.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-yamllint/python-yamllint.changes 2019-09-05 12:34:04.963576086 +0200
+++ /work/SRC/openSUSE:Factory/.python-yamllint.new.2990/python-yamllint.changes 2019-10-31 18:18:22.842204640 +0100
@@ -1,0 +2,10 @@
+Wed Oct 30 12:21:46 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.18.0:
+ * Lint .yamllint config file by default
+ * Also read config from .yamllint.yml and .yamllint.yaml
+ * Improve documentation for yaml-files
+ * Update documentation for pre-commit
+ * Explicitly disable empty-values and octal-values rules
+
+-------------------------------------------------------------------
Old:
----
yamllint-1.17.0.tar.gz
New:
----
yamllint-1.18.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-yamllint.spec ++++++
--- /var/tmp/diff_new_pack.xCjwmk/_old 2019-10-31 18:18:23.534205356 +0100
+++ /var/tmp/diff_new_pack.xCjwmk/_new 2019-10-31 18:18:23.538205360 +0100
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-yamllint
-Version: 1.17.0
+Version: 1.18.0
Release: 0
Summary: A linter for YAML files
License: GPL-3.0-only
@@ -34,9 +34,6 @@
# SECTION test requirements
BuildRequires: %{python_module PyYAML}
BuildRequires: %{python_module pathspec >= 0.5.3}
-# nose is optional, used only to exclude a failing test caused by PyYAML
-# deprecation warnings.
-BuildRequires: %{python_module nose}
# /SECTION
%python_subpackages
@@ -58,7 +55,7 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-%python_exec -m nose -e test_run_auto_output_without_tty_output
+%python_exec -m unittest discover
%files %{python_files}
%doc README.rst
++++++ yamllint-1.17.0.tar.gz -> yamllint-1.18.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/PKG-INFO new/yamllint-1.18.0/PKG-INFO
--- old/yamllint-1.17.0/PKG-INFO 2019-08-12 16:57:07.000000000 +0200
+++ new/yamllint-1.18.0/PKG-INFO 2019-10-15 09:50:07.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.2
Name: yamllint
-Version: 1.17.0
+Version: 1.18.0
Summary: A linter for YAML files.
Home-page: https://github.com/adrienverge/yamllint
Author: Adrien Vergé
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/docs/configuration.rst new/yamllint-1.18.0/docs/configuration.rst
--- old/yamllint-1.17.0/docs/configuration.rst 2019-08-12 16:53:44.000000000 +0200
+++ new/yamllint-1.18.0/docs/configuration.rst 2019-10-15 09:41:40.000000000 +0200
@@ -14,7 +14,8 @@
If ``-c`` is not provided, yamllint will look for a configuration file in the
following locations (by order of preference):
-- ``.yamllint`` in the current working directory
+- ``.yamllint``, ``.yamllint.yaml`` or ``.yamllint.yml`` in the current working
+ directory
- ``$XDG_CONFIG_HOME/yamllint/config``
- ``~/.config/yamllint/config``
@@ -124,8 +125,9 @@
.. code-block:: yaml
yaml-files:
- - '*.yaml'
- - '*.yml'
+ - '*.yaml'
+ - '*.yml'
+ - '.yamllint'
The same rules as for ignoring paths apply (``.gitignore``-style path pattern,
see below).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/docs/integration.rst new/yamllint-1.18.0/docs/integration.rst
--- old/yamllint-1.17.0/docs/integration.rst 2017-08-17 12:08:54.000000000 +0200
+++ new/yamllint-1.18.0/docs/integration.rst 2019-10-15 09:41:40.000000000 +0200
@@ -10,8 +10,10 @@
.. code:: yaml
---
- # Update the sha variable with the release version that you want, from the yamllint repo
+ # Update the rev variable with the release version that you want, from the yamllint repo
+ # You can pass your custom .yamllint with args attribute.
- repo: https://github.com/adrienverge/yamllint.git
- sha: v1.8.1
+ rev: v1.17.0
hooks:
- id: yamllint
+ args: [-c=/path/to/.yamllint]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/tests/rules/test_octal_values.py new/yamllint-1.18.0/tests/rules/test_octal_values.py
--- old/yamllint-1.17.0/tests/rules/test_octal_values.py 2018-02-21 12:10:11.000000000 +0100
+++ new/yamllint-1.18.0/tests/rules/test_octal_values.py 2019-10-15 09:41:40.000000000 +0200
@@ -28,7 +28,9 @@
self.check('user-city: 0o10', conf)
def test_implicit_octal_values(self):
- conf = ('octal-values: {forbid-implicit-octal: true}\n'
+ conf = ('octal-values:\n'
+ ' forbid-implicit-octal: true\n'
+ ' forbid-explicit-octal: false\n'
'new-line-at-end-of-file: disable\n'
'document-start: disable\n')
self.check('user-city: 010', conf, problem=(1, 15))
@@ -50,7 +52,9 @@
' - 0e3\n', conf)
def test_explicit_octal_values(self):
- conf = ('octal-values: {forbid-explicit-octal: true}\n'
+ conf = ('octal-values:\n'
+ ' forbid-implicit-octal: false\n'
+ ' forbid-explicit-octal: true\n'
'new-line-at-end-of-file: disable\n'
'document-start: disable\n')
self.check('user-city: 0o10', conf, problem=(1, 16))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/tests/test_config.py new/yamllint-1.18.0/tests/test_config.py
--- old/yamllint-1.17.0/tests/test_config.py 2019-07-16 11:14:11.000000000 +0200
+++ new/yamllint-1.18.0/tests/test_config.py 2019-08-26 10:02:14.000000000 +0200
@@ -448,11 +448,13 @@
out = sys.stdout.getvalue()
out = '\n'.join(sorted(out.splitlines()))
+ docstart = '[warning] missing document start "---" (document-start)'
keydup = '[error] duplication of key "key" in mapping (key-duplicates)'
trailing = '[error] trailing spaces (trailing-spaces)'
hyphen = '[error] too many spaces after hyphen (hyphens)'
self.assertEqual(out, '\n'.join((
+ './.yamllint:1:1: ' + docstart,
'./bin/file.lint-me-anyway.yaml:3:3: ' + keydup,
'./bin/file.lint-me-anyway.yaml:4:17: ' + trailing,
'./bin/file.lint-me-anyway.yaml:5:5: ' + hyphen,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint/__init__.py new/yamllint-1.18.0/yamllint/__init__.py
--- old/yamllint-1.17.0/yamllint/__init__.py 2019-08-12 16:52:42.000000000 +0200
+++ new/yamllint-1.18.0/yamllint/__init__.py 2019-10-15 09:49:16.000000000 +0200
@@ -22,7 +22,7 @@
APP_NAME = 'yamllint'
-APP_VERSION = '1.17.0'
+APP_VERSION = '1.18.0'
APP_DESCRIPTION = __doc__
__author__ = u'Adrien Vergé'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint/cli.py new/yamllint-1.18.0/yamllint/cli.py
--- old/yamllint-1.17.0/yamllint/cli.py 2019-08-12 16:53:44.000000000 +0200
+++ new/yamllint-1.18.0/yamllint/cli.py 2019-10-15 09:41:40.000000000 +0200
@@ -154,6 +154,10 @@
conf = YamlLintConfig(file=args.config_file)
elif os.path.isfile('.yamllint'):
conf = YamlLintConfig(file='.yamllint')
+ elif os.path.isfile('.yamllint.yaml'):
+ conf = YamlLintConfig(file='.yamllint.yaml')
+ elif os.path.isfile('.yamllint.yml'):
+ conf = YamlLintConfig(file='.yamllint.yml')
elif os.path.isfile(user_global_config):
conf = YamlLintConfig(file=user_global_config)
else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint/conf/default.yaml new/yamllint-1.18.0/yamllint/conf/default.yaml
--- old/yamllint-1.17.0/yamllint/conf/default.yaml 2019-08-12 16:53:44.000000000 +0200
+++ new/yamllint-1.18.0/yamllint/conf/default.yaml 2019-10-15 09:41:40.000000000 +0200
@@ -3,6 +3,7 @@
yaml-files:
- '*.yaml'
- '*.yml'
+ - '.yamllint'
rules:
braces: enable
@@ -17,7 +18,7 @@
document-start:
level: warning
empty-lines: enable
- empty-values: enable
+ empty-values: disable
hyphens: enable
indentation: enable
key-duplicates: enable
@@ -25,7 +26,7 @@
line-length: enable
new-line-at-end-of-file: enable
new-lines: enable
- octal-values: enable
+ octal-values: disable
quoted-strings: disable
trailing-spaces: enable
truthy:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint/config.py new/yamllint-1.18.0/yamllint/config.py
--- old/yamllint-1.17.0/yamllint/config.py 2019-08-12 16:53:44.000000000 +0200
+++ new/yamllint-1.18.0/yamllint/config.py 2019-08-26 10:02:14.000000000 +0200
@@ -33,7 +33,7 @@
self.ignore = None
self.yaml_files = pathspec.PathSpec.from_lines(
- 'gitwildmatch', ['*.yaml', '*.yml'])
+ 'gitwildmatch', ['*.yaml', '*.yml', '.yamllint'])
if file is not None:
with open(file) as f:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint/rules/empty_values.py new/yamllint-1.18.0/yamllint/rules/empty_values.py
--- old/yamllint-1.17.0/yamllint/rules/empty_values.py 2019-01-11 12:00:07.000000000 +0100
+++ new/yamllint-1.18.0/yamllint/rules/empty_values.py 2019-10-15 09:41:40.000000000 +0200
@@ -75,8 +75,8 @@
TYPE = 'token'
CONF = {'forbid-in-block-mappings': bool,
'forbid-in-flow-mappings': bool}
-DEFAULT = {'forbid-in-block-mappings': False,
- 'forbid-in-flow-mappings': False}
+DEFAULT = {'forbid-in-block-mappings': True,
+ 'forbid-in-flow-mappings': True}
def check(conf, token, prev, next, nextnext, context):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint/rules/octal_values.py new/yamllint-1.18.0/yamllint/rules/octal_values.py
--- old/yamllint-1.17.0/yamllint/rules/octal_values.py 2019-01-11 12:00:07.000000000 +0100
+++ new/yamllint-1.18.0/yamllint/rules/octal_values.py 2019-10-15 09:41:40.000000000 +0200
@@ -66,8 +66,8 @@
TYPE = 'token'
CONF = {'forbid-implicit-octal': bool,
'forbid-explicit-octal': bool}
-DEFAULT = {'forbid-implicit-octal': False,
- 'forbid-explicit-octal': False}
+DEFAULT = {'forbid-implicit-octal': True,
+ 'forbid-explicit-octal': True}
def check(conf, token, prev, next, nextnext, context):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yamllint-1.17.0/yamllint.egg-info/PKG-INFO new/yamllint-1.18.0/yamllint.egg-info/PKG-INFO
--- old/yamllint-1.17.0/yamllint.egg-info/PKG-INFO 2019-08-12 16:57:07.000000000 +0200
+++ new/yamllint-1.18.0/yamllint.egg-info/PKG-INFO 2019-10-15 09:50:06.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.2
Name: yamllint
-Version: 1.17.0
+Version: 1.18.0
Summary: A linter for YAML files.
Home-page: https://github.com/adrienverge/yamllint
Author: Adrien Vergé
1
0
Hello community,
here is the log from the commit of package python-yq for openSUSE:Factory checked in at 2019-10-31 18:18:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-yq (Old)
and /work/SRC/openSUSE:Factory/.python-yq.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-yq"
Thu Oct 31 18:18:03 2019 rev:5 rq:744155 version:2.8.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-yq/python-yq.changes 2019-05-22 15:41:59.322427068 +0200
+++ /work/SRC/openSUSE:Factory/.python-yq.new.2990/python-yq.changes 2019-10-31 18:18:21.662203418 +0100
@@ -1,0 +2,9 @@
+Wed Oct 30 12:17:49 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 2.8.1:
+ * Filter out -C and separate commingled yq and jq short options
+ * Set default block sequence indentation to 2 spaces, –indentless for 0
+ * Make main body of yq callable as a library function
+ * Test and release infrastructure updates
+
+-------------------------------------------------------------------
Old:
----
yq-2.7.2.tar.gz
New:
----
yq-2.8.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-yq.spec ++++++
--- /var/tmp/diff_new_pack.dGx87x/_old 2019-10-31 18:18:22.474204259 +0100
+++ /var/tmp/diff_new_pack.dGx87x/_new 2019-10-31 18:18:22.474204259 +0100
@@ -18,11 +18,10 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-yq
-Version: 2.7.2
+Version: 2.8.1
Release: 0
Summary: Command-line YAML processor - jq wrapper for YAML documents
License: Apache-2.0
-Group: Development/Languages/Python
URL: https://github.com/kislyuk/yq
Source: https://files.pythonhosted.org/packages/source/y/yq/yq-%{version}.tar.gz
BuildRequires: %{python_module setuptools}
@@ -69,7 +68,7 @@
%check
export LANG=en_US.UTF-8
-PYTHONPATH=%{buildroot}%{python3_sitelib} python3 test/test.py -v
+%python_expand PYTHONPATH=%{buildroot}%{$python_sitelib} $python test/test.py -v
%files %{python_files}
%license LICENSE
++++++ yq-2.7.2.tar.gz -> yq-2.8.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/MANIFEST.in new/yq-2.8.1/MANIFEST.in
--- old/yq-2.7.2/MANIFEST.in 2018-04-28 16:21:59.000000000 +0200
+++ new/yq-2.8.1/MANIFEST.in 2019-10-16 18:29:39.000000000 +0200
@@ -1 +1,2 @@
include LICENSE
+recursive-include test *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/PKG-INFO new/yq-2.8.1/PKG-INFO
--- old/yq-2.7.2/PKG-INFO 2019-01-09 19:55:01.000000000 +0100
+++ new/yq-2.8.1/PKG-INFO 2019-10-28 17:16:45.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: yq
-Version: 2.7.2
+Version: 2.8.1
Summary: Command-line YAML/XML processor - jq wrapper for YAML/XML documents
Home-page: https://github.com/kislyuk/yq
Author: Andrey Kislyuk
@@ -43,6 +43,8 @@
YAML `tags <http://www.yaml.org/spec/1.2/spec.html#id2764295>`_ in the input are ignored (any nested data is treated as
untagged). Key order is preserved.
+ Because YAML treats JSON as a dialect of YAML, you can use yq to convert JSON to YAML: ``yq -y . < in.json > out.yml``.
+
XML support
-----------
``yq`` also supports XML. The ``yq`` package installs an executable, ``xq``, which
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/README.rst new/yq-2.8.1/README.rst
--- old/yq-2.7.2/README.rst 2018-08-04 04:43:19.000000000 +0200
+++ new/yq-2.8.1/README.rst 2019-10-16 18:29:39.000000000 +0200
@@ -35,6 +35,8 @@
YAML `tags <http://www.yaml.org/spec/1.2/spec.html#id2764295>`_ in the input are ignored (any nested data is treated as
untagged). Key order is preserved.
+Because YAML treats JSON as a dialect of YAML, you can use yq to convert JSON to YAML: ``yq -y . < in.json > out.yml``.
+
XML support
-----------
``yq`` also supports XML. The ``yq`` package installs an executable, ``xq``, which
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/setup.py new/yq-2.8.1/setup.py
--- old/yq-2.7.2/setup.py 2019-01-09 19:51:35.000000000 +0100
+++ new/yq-2.8.1/setup.py 2019-10-28 17:16:14.000000000 +0100
@@ -6,7 +6,7 @@
setup(
name="yq",
- version="2.7.2",
+ version="2.8.1",
url="https://github.com/kislyuk/yq",
license="Apache Software License",
author="Andrey Kislyuk",
@@ -27,7 +27,7 @@
include_package_data=True,
entry_points={
'console_scripts': [
- 'yq=yq:main',
+ 'yq=yq:cli',
'xq=yq:xq_cli'
],
},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/test/test.py new/yq-2.8.1/test/test.py
--- old/yq-2.7.2/test/test.py 2019-01-09 19:47:40.000000000 +0100
+++ new/yq-2.8.1/test/test.py 2019-10-28 16:41:04.000000000 +0100
@@ -6,7 +6,7 @@
import os, sys, unittest, tempfile, json, io, platform, subprocess
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
-from yq import main # noqa
+from yq import yq, cli # noqa
USING_PYTHON2 = True if sys.version_info < (3, 0) else False
USING_PYPY = True if platform.python_implementation() == "PyPy" else False
@@ -38,7 +38,7 @@
try:
sys.stdin = io.StringIO(input_data)
sys.stdout = io.BytesIO() if USING_PYTHON2 else io.StringIO()
- main(args, input_format=input_format)
+ cli(args, input_format=input_format)
except SystemExit as e:
self.assertIn(e.code, expect_exit_codes)
finally:
@@ -51,7 +51,7 @@
def test_yq(self):
for input_format in "yaml", "xml", "toml":
try:
- main(["--help"], input_format=input_format)
+ cli(["--help"], input_format=input_format)
except SystemExit as e:
self.assertEqual(e.code, 0)
self.assertEqual(self.run_yq("{}", ["."]), "")
@@ -87,9 +87,21 @@
@unittest.skipIf(subprocess.check_output(["jq", "--version"]) < b"jq-1.6", "Test options introduced in jq 1.6")
def test_jq16_arg_passthrough(self):
- self.assertEqual(self.run_yq("{}", ["-y", ".a=$ARGS.positional", "--args", "a", "b"]), "a:\n- a\n- b\n")
+ self.assertEqual(self.run_yq("{}", ["--indentless", "-y", ".a=$ARGS.positional", "--args", "a", "b"]),
+ "a:\n- a\n- b\n")
+ self.assertEqual(self.run_yq("{}", ["-y", ".a=$ARGS.positional", "--args", "a", "b"]), "a:\n - a\n - b\n")
self.assertEqual(self.run_yq("{}", [".", "--jsonargs", "a", "b"]), "")
+ def test_short_option_separation(self):
+ # self.assertEqual(self.run_yq('{"a": 1}', ["-yCcC", "."]), "a: 1\n") - Fails on 2.7 and 3.8
+ self.assertEqual(self.run_yq('{"a": 1}', ["-CcCy", "."]), "a: 1\n")
+ self.assertEqual(self.run_yq('{"a": 1}', ["-y", "-CS", "."]), "a: 1\n")
+ self.assertEqual(self.run_yq('{"a": 1}', ["-y", "-CC", "."]), "a: 1\n")
+ self.assertEqual(self.run_yq('{"a": 1}', ["-y", "-cC", "."]), "a: 1\n")
+ self.assertEqual(self.run_yq('{"a": 1}', ["-x", "-cC", "."]), "<a>1</a>\n")
+ self.assertEqual(self.run_yq('{"a": 1}', ["-C", "."]), "")
+ self.assertEqual(self.run_yq('{"a": 1}', ["-Cc", "."]), "")
+
def fd_path(self, fh):
return "/dev/fd/{}".format(fh.fileno())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/yq/__init__.py new/yq-2.8.1/yq/__init__.py
--- old/yq-2.7.2/yq/__init__.py 2019-01-09 19:50:25.000000000 +0100
+++ new/yq-2.8.1/yq/__init__.py 2019-10-28 16:32:15.000000000 +0100
@@ -27,9 +27,13 @@
class OrderedLoader(yaml.SafeLoader):
pass
-class OrderedDumper(yaml.SafeDumper):
+class OrderedIndentlessDumper(yaml.SafeDumper):
pass
+class OrderedDumper(yaml.SafeDumper):
+ def increase_indent(self, flow=False, indentless=False):
+ return super(OrderedDumper, self).increase_indent(flow, False)
+
class JSONDateTimeEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, (datetime, date, time)):
@@ -59,7 +63,9 @@
OrderedLoader.add_constructor(yaml.resolver.BaseResolver.DEFAULT_MAPPING_TAG, construct_mapping)
OrderedLoader.add_multi_constructor('', parse_unknown_tags)
-OrderedDumper.add_representer(OrderedDict, represent_dict_order)
+
+for dumper in OrderedIndentlessDumper, OrderedDumper:
+ dumper.add_representer(OrderedDict, represent_dict_order)
# jq arguments that consume positionals must be listed here to avoid our parser mistaking them for our positionals
jq_arg_spec = {"--indent": 1, "-f": 1, "--from-file": 1, "-L": 1, "--arg": 2, "--argjson": 2, "--slurpfile": 2,
@@ -70,7 +76,7 @@
def get_parser(program_name):
# By default suppress these help strings and only enable them in the specific programs.
- yaml_output_help, width_help = argparse.SUPPRESS, argparse.SUPPRESS
+ yaml_output_help, width_help, indentless_help = argparse.SUPPRESS, argparse.SUPPRESS, argparse.SUPPRESS
xml_output_help, xml_dtd_help, xml_root_help = argparse.SUPPRESS, argparse.SUPPRESS, argparse.SUPPRESS
toml_output_help = argparse.SUPPRESS
@@ -78,6 +84,7 @@
current_language = "YAML"
yaml_output_help = "Transcode jq JSON output back into YAML and emit it"
width_help = "When using --yaml-output, specify string wrap width"
+ indentless_help = 'When using --yaml-output, indent block style lists (sequences) with 0 spaces instead of 2'
elif program_name == "xq":
current_language = "XML"
xml_output_help = "Transcode jq JSON output back into XML and emit it"
@@ -94,64 +101,96 @@
if sys.version_info >= (3, 5):
parser_args.update(allow_abbrev=False) # required to disambiguate options listed in jq_arg_spec
parser = Parser(**parser_args)
- parser.add_argument("--yaml-output", "--yml-output", "-y", action="store_true", help=yaml_output_help)
+ parser.add_argument("--output-format", default="json", help=argparse.SUPPRESS)
+ parser.add_argument("--yaml-output", "--yml-output", "-y", dest="output_format", action="store_const", const="yaml",
+ help=yaml_output_help)
parser.add_argument("--width", "-w", type=int, help=width_help)
- parser.add_argument("--xml-output", "-x", action="store_true", help=xml_output_help)
+ parser.add_argument("--indentless-lists", "--indentless", action="store_true", help=indentless_help)
+ parser.add_argument("--xml-output", "-x", dest="output_format", action="store_const", const="xml",
+ help=xml_output_help)
parser.add_argument("--xml-dtd", action="store_true", help=xml_dtd_help)
parser.add_argument("--xml-root", help=xml_root_help)
- parser.add_argument("--toml-output", "-t", action="store_true", help=toml_output_help)
+ parser.add_argument("--toml-output", "-t", dest="output_format", action="store_const", const="toml",
+ help=toml_output_help)
parser.add_argument("--version", action="version", version="%(prog)s {version}".format(version=__version__))
for arg in jq_arg_spec:
parser.add_argument(arg, nargs=jq_arg_spec[arg], dest=arg, action="append", help=argparse.SUPPRESS)
parser.add_argument("jq_filter")
- parser.add_argument("files", nargs="*", type=argparse.FileType())
+ parser.add_argument("input_streams", nargs="*", type=argparse.FileType(), metavar="files", default=[sys.stdin])
return parser
def xq_cli():
- main(input_format="xml", program_name="xq")
+ cli(input_format="xml", program_name="xq")
def tq_cli():
- main(input_format="toml", program_name="tq")
+ cli(input_format="toml", program_name="tq")
-def main(args=None, input_format="yaml", program_name="yq"):
+def cli(args=None, input_format="yaml", program_name="yq"):
parser = get_parser(program_name)
args, jq_args = parser.parse_known_args(args=args)
+
+ for i, arg in enumerate(jq_args):
+ if arg.startswith("-") and not arg.startswith("--"):
+ if "y" in arg:
+ args.output_format = "yaml"
+ elif "x" in arg:
+ args.output_format = "xml"
+ jq_args[i] = arg.replace("x", "").replace("y", "")
+ if args.output_format != "json":
+ jq_args[i] = jq_args[i].replace("C", "")
+ if jq_args[i] == "-":
+ jq_args[i] = None
+
+ jq_args = [arg for arg in jq_args if arg is not None]
+
for arg in jq_arg_spec:
values = getattr(args, arg, None)
+ delattr(args, arg)
if values is not None:
for value_group in values:
jq_args.append(arg)
jq_args.extend(value_group)
- if getattr(args, "--from-file") or getattr(args, "-f"):
- args.files.insert(0, argparse.FileType()(args.jq_filter))
+
+ if "--from-file" in jq_args or "-f" in jq_args:
+ args.input_streams.insert(0, argparse.FileType()(args.jq_filter))
else:
jq_filter_arg_loc = len(jq_args)
- if getattr(args, "--args"):
+ if "--args" in jq_args:
jq_filter_arg_loc = jq_args.index('--args') + 1
- elif getattr(args, "--jsonargs"):
+ elif "--jsonargs" in jq_args:
jq_filter_arg_loc = jq_args.index('--jsonargs') + 1
jq_args.insert(jq_filter_arg_loc, args.jq_filter)
+ delattr(args, "jq_filter")
- if sys.stdin.isatty() and not args.files:
+ if sys.stdin.isatty() and not args.input_streams:
return parser.print_help()
- converting_output = args.yaml_output or args.xml_output or args.toml_output
+ yq(input_format=input_format, program_name=program_name, jq_args=jq_args, **vars(args))
+
+def yq(input_streams=None, output_stream=None, input_format="yaml", output_format="json",
+ program_name="yq", width=None, indentless_lists=False, xml_root=None, xml_dtd=False, jq_args=frozenset(),
+ exit_func=None):
+ if not input_streams:
+ input_streams = [sys.stdin]
+ if not output_stream:
+ output_stream = sys.stdout
+ if not exit_func:
+ exit_func = sys.exit
+ converting_output = True if output_format != "json" else False
try:
# Note: universal_newlines is just a way to induce subprocess to make stdin a text buffer and encode it for us
- jq = subprocess.Popen(["jq"] + jq_args,
+ jq = subprocess.Popen(["jq"] + list(jq_args),
stdin=subprocess.PIPE,
stdout=subprocess.PIPE if converting_output else None,
universal_newlines=True)
except OSError as e:
msg = "{}: Error starting jq: {}: {}. Is jq installed and available on PATH?"
- parser.exit(msg.format(program_name, type(e).__name__, e))
+ exit_func(msg.format(program_name, type(e).__name__, e))
try:
- input_streams = args.files if args.files else [sys.stdin]
-
if converting_output:
# TODO: enable true streaming in this branch (with asyncio, asyncproc, a multi-shot variant of
# subprocess.Popen._communicate, etc.)
@@ -171,41 +210,43 @@
input_payload = "\n".join(json.dumps(doc, cls=JSONDateTimeEncoder) for doc in input_docs)
jq_out, jq_err = jq.communicate(input_payload)
json_decoder = json.JSONDecoder(object_pairs_hook=OrderedDict)
- if args.yaml_output:
- yaml.dump_all(decode_docs(jq_out, json_decoder), stream=sys.stdout, Dumper=OrderedDumper,
- width=args.width, allow_unicode=True, default_flow_style=False)
- elif args.xml_output:
+ if output_format == "yaml":
+ dumper_class = OrderedIndentlessDumper if indentless_lists else OrderedDumper
+ yaml.dump_all(decode_docs(jq_out, json_decoder), stream=output_stream, Dumper=dumper_class,
+ width=width, allow_unicode=True, default_flow_style=False)
+ elif output_format == "xml":
import xmltodict
for doc in decode_docs(jq_out, json_decoder):
- if args.xml_root:
- doc = {args.xml_root: doc}
+ if xml_root:
+ doc = {xml_root: doc}
elif not isinstance(doc, OrderedDict):
msg = ("{}: Error converting JSON to XML: cannot represent non-object types at top level. "
"Use --xml-root=name to envelope your output with a root element.")
- parser.exit(msg.format(program_name))
- full_document = True if args.xml_dtd else False
+ exit_func(msg.format(program_name))
+ full_document = True if xml_dtd else False
try:
- xmltodict.unparse(doc, output=sys.stdout, full_document=full_document, pretty=True, indent=" ")
+ xmltodict.unparse(doc, output=output_stream, full_document=full_document, pretty=True,
+ indent=" ")
except ValueError as e:
if "Document must have exactly one root" in str(e):
raise Exception(str(e) + " Use --xml-root=name to envelope your output with a root element")
else:
raise
- sys.stdout.write(b"\n" if sys.version_info < (3, 0) else "\n")
- elif args.toml_output:
+ output_stream.write(b"\n" if sys.version_info < (3, 0) else "\n")
+ elif output_format == "toml":
import toml
for doc in decode_docs(jq_out, json_decoder):
if not isinstance(doc, OrderedDict):
msg = "{}: Error converting JSON to TOML: cannot represent non-object types at top level."
- parser.exit(msg.format(program_name))
+ exit_func(msg.format(program_name))
if USING_PYTHON2:
# For Python 2, dump the string and encode it into bytes.
output = toml.dumps(doc)
- sys.stdout.write(output.encode("utf-8"))
+ output_stream.write(output.encode("utf-8"))
else:
# For Python 3, write the unicode to the buffer directly.
- toml.dump(doc, sys.stdout)
+ toml.dump(doc, output_stream)
else:
if input_format == "yaml":
for input_stream in input_streams:
@@ -229,6 +270,6 @@
jq.wait()
for input_stream in input_streams:
input_stream.close()
- exit(jq.returncode)
+ exit_func(jq.returncode)
except Exception as e:
- parser.exit("{}: Error running jq: {}: {}.".format(program_name, type(e).__name__, e))
+ exit_func("{}: Error running jq: {}: {}.".format(program_name, type(e).__name__, e))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/yq/version.py new/yq-2.8.1/yq/version.py
--- old/yq-2.7.2/yq/version.py 2019-01-09 19:54:54.000000000 +0100
+++ new/yq-2.8.1/yq/version.py 2019-10-28 17:16:41.000000000 +0100
@@ -1 +1 @@
-__version__ = '2.7.2'
+__version__ = '2.8.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/yq.egg-info/PKG-INFO new/yq-2.8.1/yq.egg-info/PKG-INFO
--- old/yq-2.7.2/yq.egg-info/PKG-INFO 2019-01-09 19:55:01.000000000 +0100
+++ new/yq-2.8.1/yq.egg-info/PKG-INFO 2019-10-28 17:16:45.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: yq
-Version: 2.7.2
+Version: 2.8.1
Summary: Command-line YAML/XML processor - jq wrapper for YAML/XML documents
Home-page: https://github.com/kislyuk/yq
Author: Andrey Kislyuk
@@ -43,6 +43,8 @@
YAML `tags <http://www.yaml.org/spec/1.2/spec.html#id2764295>`_ in the input are ignored (any nested data is treated as
untagged). Key order is preserved.
+ Because YAML treats JSON as a dialect of YAML, you can use yq to convert JSON to YAML: ``yq -y . < in.json > out.yml``.
+
XML support
-----------
``yq`` also supports XML. The ``yq`` package installs an executable, ``xq``, which
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yq-2.7.2/yq.egg-info/entry_points.txt new/yq-2.8.1/yq.egg-info/entry_points.txt
--- old/yq-2.7.2/yq.egg-info/entry_points.txt 2019-01-09 19:55:01.000000000 +0100
+++ new/yq-2.8.1/yq.egg-info/entry_points.txt 2019-10-28 17:16:45.000000000 +0100
@@ -1,4 +1,4 @@
[console_scripts]
xq = yq:xq_cli
-yq = yq:main
+yq = yq:cli
1
0
Hello community,
here is the log from the commit of package keepassxc for openSUSE:Factory checked in at 2019-10-31 18:18:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/keepassxc (Old)
and /work/SRC/openSUSE:Factory/.keepassxc.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "keepassxc"
Thu Oct 31 18:18:01 2019 rev:20 rq:743245 version:2.5.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/keepassxc/keepassxc.changes 2019-09-09 12:36:18.593463240 +0200
+++ /work/SRC/openSUSE:Factory/.keepassxc.new.2990/keepassxc.changes 2019-10-31 18:18:19.554201237 +0100
@@ -1,0 +2,6 @@
+Sat Oct 26 19:39:26 UTC 2019 - Marcus Rueckert <mrueckert(a)suse.de>
+
+- update to 2.5.0
+ https://github.com/keepassxreboot/keepassxc/releases/tag/2.5.0
+
+-------------------------------------------------------------------
Old:
----
keepassxc-2.4.3-src.tar.xz
keepassxc-2.4.3-src.tar.xz.sig
New:
----
keepassxc-2.5.0-src.tar.xz
keepassxc-2.5.0-src.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ keepassxc.spec ++++++
--- /var/tmp/diff_new_pack.2eIlMT/_old 2019-10-31 18:18:21.106202843 +0100
+++ /var/tmp/diff_new_pack.2eIlMT/_new 2019-10-31 18:18:21.114202851 +0100
@@ -17,7 +17,7 @@
Name: keepassxc
-Version: 2.4.3
+Version: 2.5.0
Release: 0
Summary: Qt5-based Password Manager
License: GPL-2.0-only OR GPL-3.0-only
@@ -46,6 +46,7 @@
BuildRequires: ykpers-devel
%endif
BuildRequires: libyubikey-devel
+BuildRequires: readline-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Core)
@@ -152,12 +153,13 @@
%files
%license COPYING LICENSE*
-%doc CHANGELOG README.md
+%doc CHANGELOG.md README.md
%doc docs/*
%{_bindir}/%{name}
%{_bindir}/%{name}-cli
%{_bindir}/%{name}-proxy
%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/docs/
%{_datadir}/%{name}/icons/
%{_datadir}/%{name}/wizard/
%{_datadir}/%{name}/wordlists/
@@ -168,6 +170,7 @@
%{_datadir}/mime/packages/%{name}.xml
%dir %{_libdir}/%{name}
%{_libdir}/keepassxc/libkeepassx-autotype-xcb.so
+%{_mandir}/man1/%{name}.1*
%{_mandir}/man1/%{name}-cli.1*
%if 0%{?suse_version}
++++++ debian.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/changelog new/debian/changelog
--- old/debian/changelog 2019-06-12 13:02:06.164500526 +0200
+++ new/debian/changelog 2019-10-26 21:39:21.386453007 +0200
@@ -1,3 +1,10 @@
+keepassxc (2.5.0-1.1) experimental; urgency=medium
+
+ * update to 2.5.0
+ https://github.com/keepassxreboot/keepassxc/releases/tag/2.5.0
+
+ -- darix <darix+debian(a)nordisch.org> Sat, 26 Oct 2019 19:39:00 -0000
+
keepassxc (2.4.3-1.1) experimental; urgency=medium
* update to 2.4.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/control new/debian/control
--- old/debian/control 2019-03-25 15:13:25.606028949 +0100
+++ new/debian/control 2019-10-26 21:28:07.938198902 +0200
@@ -4,10 +4,12 @@
Maintainer: Julian Andres Klode <jak(a)debian.org>
Build-Depends: cmake,
debhelper (>= 10),
- libargon2-0-dev,
+ libargon2-dev | libargon2-0-dev,
libcurl4-gnutls-dev,
libgcrypt20-dev,
+ libqt5svg5-dev,
libqt5x11extras5-dev,
+ libqrencode-dev,
libsodium-dev,
libxtst-dev,
libykpers-1-dev,
@@ -20,11 +22,11 @@
libqt5x11extras5-dev,
libqrencode-dev,
libquazip5-dev,
- libquazip5-headers,
+ libreadline-dev,
xauth,
xvfb,
zlib1g-dev
-Standards-Version: 4.1.3
+Standards-Version: 4.4.0
Homepage: https://www.keepassxc.org/
Vcs-Git: https://salsa.debian.org/debian/keepassxc.git
Vcs-Browser: https://salsa.debian.org/debian/keepassxc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/copyright new/debian/copyright
--- old/debian/copyright 2019-01-24 00:30:54.822350044 +0100
+++ new/debian/copyright 2019-10-26 21:28:07.938198902 +0200
@@ -14,7 +14,6 @@
2013, Laszlo Papp <lpapp(a)kde.org>
2013, David Faure <faure(a)kde.org>
2014, Kyle Manna <kyle(a)kylemanna.com>
- 2017, KeePassXC Team <team(a)keepassxc.org>
2015-2016, Enrico Mariotti <enricomariotti(a)yahoo.it>
2017, Vladimir Svyatski <v.unreal(a)gmail.com>
2016, Danny Su <contact(a)dannysu.com>
@@ -24,23 +23,43 @@
2012, Tobias Tangemann
2016, Jonathan White <support(a)dmapps.us>
2013, Francois Ferrand
+ 2016-2018, KeePassXC Team <team(a)keepassxc.org>
License: GPL-2 or GPL-3
+Comment: The "KeePassXC Team" in every copyright notice is formed by the following people:
+ - droidmonkey
+ - phoerious
+ - TheZ3ro <io(a)thezero.org>
+ - louib
+ - weslly
+ Every other contributor is listed on https://github.com/keepassxreboot/keepassxc/graphs/contributors
Files: cmake/GNUInstallDirs.cmake
Copyright: 2011 Nikita Krupen'ko <krnekit(a)gmail.com>
2011 Kitware, Inc.
License: BSD-3-clause
+Files: cmake/CodeCoverage.cmake
+Copyright: 2012 - 2015, Lars Bilke
+License: BSD-3-clause-CopyrightHolders
+
+Files: cmake/FindYubiKey.cmake
+Copyright: 2014 Kyle Manna <kyle(a)kylemanna.com>
+License: GPL-2 or GPL-3
+
+Files: cmake/GenerateProductVersion.cmake
+Copyright: 2015 halex2005 <akharlov(a)gmail.com>
+License: Expat
+
Files: share/icons/application/*/apps/keepassxc.png
- share/icons/application/scalable/apps/keepassxc.svgz
+ share/icons/application/scalable/apps/keepassxc.svg
share/icons/application/*/apps/keepassxc-dark.png
- share/icons/application/scalable/apps/keepassxc-dark.svgz
+ share/icons/application/scalable/apps/keepassxc-dark.svg
share/icons/application/*/apps/keepassxc-locked.png
- share/icons/application/scalable/apps/keepassxc-locked.svgz
+ share/icons/application/scalable/apps/keepassxc-locked.svg
share/icons/application/*/apps/keepassxc-unlocked.png
- share/icons/application/scalable/apps/keepassxc-unlocked.svgz
+ share/icons/application/scalable/apps/keepassxc-unlocked.svg
share/icons/application/*/mimetypes/application-x-keepassxc.png
- share/icons/application/scalable/mimetypes/application-x-keepassxc.svgz
+ share/icons/application/scalable/mimetypes/application-x-keepassxc.svg
Copyright: 2016, Lorenzo Stella <lorenzo.stl(a)gmail.com>
License: LGPL-2
@@ -127,7 +146,14 @@
License: LGPL-2.1
Comment: based on Nuvola icon theme
+Files: share/icons/application/*/actions/favicon-download.png
+Copyright: 2003-2004, David Vignoni <david(a)icon-king.com>
+ 2018, Kyle Kneitinger <kyle(a)kneit.in>
+License: LGPL-2.1
+Comment: based on Nuvola icon theme
+
Files: share/icons/application/*/actions/application-exit.png
+ share/icons/application/*/actions/chronometer.png
share/icons/application/*/actions/configure.png
share/icons/application/*/actions/dialog-close.png
share/icons/application/*/actions/dialog-ok.png
@@ -150,12 +176,13 @@
share/icons/application/*/actions/view-history.png
share/icons/application/*/apps/internet-web-browser.png
share/icons/application/*/apps/preferences-desktop-icons.png
+ share/icons/application/*/apps/utilities-terminal.png
share/icons/application/*/categories/preferences-other.png
share/icons/application/*/status/dialog-error.png
share/icons/application/*/status/dialog-information.png
share/icons/application/*/status/dialog-warning.png
share/icons/application/*/status/security-high.png
- share/icons/svg/*.svgz
+ share/icons/svg/*.svg
Copyright: 2007, Nuno Pinheiro <nuno(a)oxygen-icons.org>
2007, David Vignoni <david(a)icon-king.com>
2007, David Miller <miller(a)oxygen-icons.org>
@@ -185,69 +212,22 @@
share/icons/database/C66_Money.png
Copyright: none
License: public-domain
- In the public domain.
-
-Files: src/crypto/salsa20/*
-Copyright: none
-License: public-domain
- In the public domain.
Files: src/streams/qtiocompressor.*
src/streams/QtIOCompressor
tests/modeltest.*
Copyright: 2009-2012, Nokia Corporation and/or its subsidiary(-ies)
- Copyright (C) 2015 The Qt Company Ltd.
License: LGPL-2.1 or GPL-3
-Files: cmake/CodeCoverage.cmake
-Copyright: 2012 - 2015, Lars Bilke
-License: BSD-3-clause-CopyrightHolders
-
-Files: cmake/GenerateProductVersion.cmake
-Copyright: 2015, by [halex2005](mailto:akharlov@gmail.com)
-License: Expat
-
-Files: cmake/GetGitRevisionDescription.cmake*
-Copyright: 2009-2010, Iowa State University
-License: Boost-1.0
-
-Files: src/zxcvbn/*
-Copyright: 2015, Tony Evans
-License: BSD-3-clause-CopyrightHolders
-
-Files: src/http/qhttp/*
-Copyright: 2014-2016, Amir Zamani
-License: Expat
-
-Files: src/http/qhttp/http-parser/*
-Copyright: 2002-2013, Igor Sysoev
- 2011-2013, Nginx, Inc.
- Joyent, Inc. and other Node contributor
-License: Expat and BSD-2-Clause
-Comment:
- The original header of the nginx file started with:
- /*
- * Copyright (C) 2002-2013 Igor Sysoev
- * Copyright (C) 2011-2013 Nginx, Inc.
- * All rights reserved.
- before the BSD-2-Clause license. This was apparently wrongfully removed at some
- point, probably by Node.js contributors. By listing the copyright statements
- here, we still retain them (albeit in a different file)
-
-Files: src/http/qhttp/http-parser/http_parser.h
-Copyright: Joyent, Inc. and other Node contributor
-License: Expat
-
-Files: src/gui/KMessageWidget.*
-Copyright: 2011, Aurélien Gâteau <agateau(a)kde.org>
- 2014, Dominik Haumann <dhaumann(a)kde.org>
+Files: src/gui/KMessageWidget.h
+ src/gui/KMessageWidget.cpp
+Copyright: 2011 Aurélien Gâteau <agateau(a)kde.org>
+ 2014 Dominik Haumann <dhaumann(a)kde.org>
License: LGPL-2.1+
-Files: src/totp/base32.*
-Copyright: 2010, Google Inc.
- 2017, KeePassXC team <team(a)keepassxc.org>
-License: Apache-2.0
-
+Files: share/linux/org.keepassxc.KeePassXC.appdata.xml
+Copyright: Copyright 2017 KeePassXC Team <team(a)keepassxc.org>
+License: CC-BY-3.0
License: GPL-2
This program is free software; you can redistribute it
@@ -476,31 +456,6 @@
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.
-License: Boost-1.0
- Boost Software License - Version 1.0 - August 17th, 2003
- .
- Permission is hereby granted, free of charge, to any person or organization
- obtaining a copy of the software and accompanying documentation covered by
- this license (the "Software") to use, reproduce, display, distribute,
- execute, and transmit the Software, and to prepare derivative works of the
- Software, and to permit third-parties to whom the Software is furnished to
- do so, all subject to the following:
- .
- The copyright notices in the Software and this entire statement, including
- the above license grant, this restriction and the following disclaimer,
- must be included in all copies of the Software, in whole or in part, and
- all derivative works of the Software, unless such copies or derivative
- works are solely in the form of machine-executable object code generated by
- a source language processor.
- .
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
- SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
- FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- DEALINGS IN THE SOFTWARE.
-
License: BSD-3-clause-CopyrightHolders
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
@@ -582,40 +537,340 @@
On Debian systems, the full text of the license can be found in the file
`/usr/share/common-licenses/LGPL-2.1'.
-License: Apache-2.0
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- .
- http://www.apache.org/licenses/LICENSE-2.0
- .
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- .
- On Debian systems, the full text of the license can be found in the file
- `/usr/share/common-licenses/Apache-2.0'.
+License: public-domain
+ <general public domain blurb>
-License: BSD-2-Clause
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
+License: CC-BY-3.0
+ Creative Commons Attribution 3.0 Unported
+ .
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+ LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION
+ ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE
+ INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
+ ITS USE.
+ .
+ License
+ .
+ THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+ COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+ COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+ AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+ .
+ BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+ TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+ BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+ CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+ CONDITIONS.
+ .
+ 1. Definitions
+ .
+ a. "Adaptation" means a work based upon the Work, or upon the Work and
+ other pre-existing works, such as a translation, adaptation, derivative
+ work, arrangement of music or other alterations of a literary or
+ artistic work, or phonogram or performance and includes cinematographic
+ adaptations or any other form in which the Work may be recast,
+ transformed, or adapted including in any form recognizably derived from
+ the original, except that a work that constitutes a Collection will not
+ be considered an Adaptation for the purpose of this License. For the
+ avoidance of doubt, where the Work is a musical work, performance or
+ phonogram, the synchronization of the Work in timed-relation with a
+ moving image ("synching") will be considered an Adaptation for the
+ purpose of this License.
+ .
+ b. "Collection" means a collection of literary or artistic works, such
+ as encyclopedias and anthologies, or performances, phonograms or
+ broadcasts, or other works or subject matter other than works listed in
+ Section 1(f) below, which, by reason of the selection and arrangement of
+ their contents, constitute intellectual creations, in which the Work is
+ included in its entirety in unmodified form along with one or more other
+ contributions, each constituting separate and independent works in
+ themselves, which together are assembled into a collective whole. A work
+ that constitutes a Collection will not be considered an Adaptation (as
+ defined above) for the purposes of this License.
+ .
+ c. "Distribute" means to make available to the public the original and
+ copies of the Work or Adaptation, as appropriate, through sale or other
+ transfer of ownership.
+ .
+ d. "Licensor" means the individual, individuals, entity or entities that
+ offer(s) the Work under the terms of this License.
+ .
+ e. "Original Author" means, in the case of a literary or artistic work,
+ the individual, individuals, entity or entities who created the Work or
+ if no individual or entity can be identified, the publisher; and in
+ addition (i) in the case of a performance the actors, singers,
+ musicians, dancers, and other persons who act, sing, deliver, declaim,
+ play in, interpret or otherwise perform literary or artistic works or
+ expressions of folklore; (ii) in the case of a phonogram the producer
+ being the person or legal entity who first fixes the sounds of a
+ performance or other sounds; and, (iii) in the case of broadcasts, the
+ organization that transmits the broadcast.
+ .
+ f. "Work" means the literary and/or artistic work offered under the
+ terms of this License including without limitation any production in the
+ literary, scientific and artistic domain, whatever may be the mode or
+ form of its expression including digital form, such as a book, pamphlet
+ and other writing; a lecture, address, sermon or other work of the same
+ nature; a dramatic or dramatico-musical work; a choreographic work or
+ entertainment in dumb show; a musical composition with or without words;
+ a cinematographic work to which are assimilated works expressed by a
+ process analogous to cinematography; a work of drawing, painting,
+ architecture, sculpture, engraving or lithography; a photographic work
+ to which are assimilated works expressed by a process analogous to
+ photography; a work of applied art; an illustration, map, plan, sketch
+ or three-dimensional work relative to geography, topography,
+ architecture or science; a performance; a broadcast; a phonogram; a
+ compilation of data to the extent it is protected as a copyrightable
+ work; or a work performed by a variety or circus performer to the extent
+ it is not otherwise considered a literary or artistic work.
+ .
+ g. "You" means an individual or entity exercising rights under this
+ License who has not previously violated the terms of this License with
+ respect to the Work, or who has received express permission from the
+ Licensor to exercise rights under this License despite a previous
+ violation.
+ .
+ h. "Publicly Perform" means to perform public recitations of the Work
+ and to communicate to the public those public recitations, by any means
+ or process, including by wire or wireless means or public digital
+ performances; to make available to the public Works in such a way that
+ members of the public may access these Works from a place and at a place
+ individually chosen by them; to perform the Work to the public by any
+ means or process and the communication to the public of the performances
+ of the Work, including by public digital performance; to broadcast and
+ rebroadcast the Work by any means including signs, sounds or images.
+ .
+ i. "Reproduce" means to make copies of the Work by any means including
+ without limitation by sound or visual recordings and the right of
+ fixation and reproducing fixations of the Work, including storage of a
+ protected performance or phonogram in digital form or other electronic
+ medium.
+ .
+ 2. Fair Dealing Rights. Nothing in this License is intended to reduce,
+ limit, or restrict any uses free from copyright or rights arising from
+ limitations or exceptions that are provided for in connection with the
+ copyright protection under copyright law or other applicable laws.
+ .
+ 3. License Grant. Subject to the terms and conditions of this License,
+ Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+ perpetual (for the duration of the applicable copyright) license to
+ exercise the rights in the Work as stated below:
+ .
+ a. to Reproduce the Work, to incorporate the Work into one or more
+ Collections, and to Reproduce the Work as incorporated in the
+ Collections;
+ .
+ b. to create and Reproduce Adaptations provided that any such
+ Adaptation, including any translation in any medium, takes reasonable
+ steps to clearly label, demarcate or otherwise identify that changes
+ were made to the original Work. For example, a translation could be
+ marked "The original work was translated from English to Spanish," or a
+ modification could indicate "The original work has been modified.";
+ .
+ c. to Distribute and Publicly Perform the Work including as incorporated
+ in Collections; and,
+ .
+ d. to Distribute and Publicly Perform Adaptations.
+ .
+ e. For the avoidance of doubt:
+ .
+ i. Non-waivable Compulsory License Schemes. In those jurisdictions in
+ which the right to collect royalties through any statutory or compulsory
+ licensing scheme cannot be waived, the Licensor reserves the exclusive
+ right to collect such royalties for any exercise by You of the rights
+ granted under this License;
+ .
+ ii. Waivable Compulsory License Schemes. In those jurisdictions in which
+ the right to collect royalties through any statutory or compulsory
+ licensing scheme can be waived, the Licensor waives the exclusive right
+ to collect such royalties for any exercise by You of the rights granted
+ under this License; and,
+ .
+ iii. Voluntary License Schemes. The Licensor waives the right to collect
+ royalties, whether individually or, in the event that the Licensor is a
+ member of a collecting society that administers voluntary licensing
+ schemes, via that society, from any exercise by You of the rights
+ granted under this License.
+ .
+ The above rights may be exercised in all media and formats whether now
+ known or hereafter devised. The above rights include the right to make
+ such modifications as are technically necessary to exercise the rights
+ in other media and formats. Subject to Section 8(f), all rights not
+ expressly granted by Licensor are hereby reserved.
+ .
+ 4. Restrictions. The license granted in Section 3 above is expressly
+ made subject to and limited by the following restrictions:
+ .
+ a. You may Distribute or Publicly Perform the Work only under the terms
+ of this License. You must include a copy of, or the Uniform Resource
+ Identifier (URI) for, this License with every copy of the Work You
+ Distribute or Publicly Perform. You may not offer or impose any terms on
+ the Work that restrict the terms of this License or the ability of the
+ recipient of the Work to exercise the rights granted to that recipient
+ under the terms of the License. You may not sublicense the Work. You
+ must keep intact all notices that refer to this License and to the
+ disclaimer of warranties with every copy of the Work You Distribute or
+ Publicly Perform. When You Distribute or Publicly Perform the Work, You
+ may not impose any effective technological measures on the Work that
+ restrict the ability of a recipient of the Work from You to exercise the
+ rights granted to that recipient under the terms of the License. This
+ Section 4(a) applies to the Work as incorporated in a Collection, but
+ this does not require the Collection apart from the Work itself to be
+ made subject to the terms of this License. If You create a Collection,
+ upon notice from any Licensor You must, to the extent practicable,
+ remove from the Collection any credit as required by Section 4(b), as
+ requested. If You create an Adaptation, upon notice from any Licensor
+ You must, to the extent practicable, remove from the Adaptation any
+ credit as required by Section 4(b), as requested.
+ .
+ b. If You Distribute, or Publicly Perform the Work or any Adaptations or
+ Collections, You must, unless a request has been made pursuant to
+ Section 4(a), keep intact all copyright notices for the Work and
+ provide, reasonable to the medium or means You are utilizing: (i) the
+ name of the Original Author (or pseudonym, if applicable) if supplied,
+ and/or if the Original Author and/or Licensor designate another party or
+ parties (e.g., a sponsor institute, publishing entity, journal) for
+ attribution ("Attribution Parties") in Licensor's copyright notice,
+ terms of service or by other reasonable means, the name of such party or
+ parties; (ii) the title of the Work if supplied; (iii) to the extent
+ reasonably practicable, the URI, if any, that Licensor specifies to be
+ associated with the Work, unless such URI does not refer to the
+ copyright notice or licensing information for the Work; and (iv) ,
+ consistent with Section 3(b), in the case of an Adaptation, a credit
+ identifying the use of the Work in the Adaptation (e.g., "French
+ translation of the Work by Original Author," or "Screenplay based on
+ original Work by Original Author"). The credit required by this Section
+ 4 (b) may be implemented in any reasonable manner; provided, however,
+ that in the case of a Adaptation or Collection, at a minimum such credit
+ will appear, if a credit for all contributing authors of the Adaptation
+ or Collection appears, then as part of these credits and in a manner at
+ least as prominent as the credits for the other contributing authors.
+ For the avoidance of doubt, You may only use the credit required by this
+ Section for the purpose of attribution in the manner set out above and,
+ by exercising Your rights under this License, You may not implicitly or
+ explicitly assert or imply any connection with, sponsorship or
+ endorsement by the Original Author, Licensor and/or Attribution Parties,
+ as appropriate, of You or Your use of the Work, without the separate,
+ express prior written permission of the Original Author, Licensor and/or
+ Attribution Parties.
+ .
+ c. Except as otherwise agreed in writing by the Licensor or as may be
+ otherwise permitted by applicable law, if You Reproduce, Distribute or
+ Publicly Perform the Work either by itself or as part of any Adaptations
+ or Collections, You must not distort, mutilate, modify or take other
+ derogatory action in relation to the Work which would be prejudicial to
+ the Original Author's honor or reputation. Licensor agrees that in those
+ jurisdictions (e.g. Japan), in which any exercise of the right granted
+ in Section 3(b) of this License (the right to make Adaptations) would be
+ deemed to be a distortion, mutilation, modification or other derogatory
+ action prejudicial to the Original Author's honor and reputation, the
+ Licensor will waive or not assert, as appropriate, this Section, to the
+ fullest extent permitted by the applicable national law, to enable You
+ to reasonably exercise Your right under Section 3(b) of this License
+ (right to make Adaptations) but not otherwise.
+ .
+ 5. Representations, Warranties and Disclaimer
+ .
+ UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+ OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+ KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+ INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+ LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+ WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+ EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+ .
+ 6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE
+ LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR
+ ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES
+ ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS
+ BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+ .
+ 7. Termination
+ .
+ a. This License and the rights granted hereunder will terminate
+ automatically upon any breach by You of the terms of this License.
+ Individuals or entities who have received Adaptations or Collections
+ from You under this License, however, will not have their licenses
+ terminated provided such individuals or entities remain in full
+ compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+ survive any termination of this License.
+ .
+ b. Subject to the above terms and conditions, the license granted here
+ is perpetual (for the duration of the applicable copyright in the Work).
+ Notwithstanding the above, Licensor reserves the right to release the
+ Work under different license terms or to stop distributing the Work at
+ any time; provided, however that any such election will not serve to
+ withdraw this License (or any other license that has been, or is
+ required to be, granted under the terms of this License), and this
+ License will continue in full force and effect unless terminated as
+ stated above.
+ .
+ 8. Miscellaneous
+ .
+ a. Each time You Distribute or Publicly Perform the Work or a
+ Collection, the Licensor offers to the recipient a license to the Work
+ on the same terms and conditions as the license granted to You under
+ this License.
+ .
+ b. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+ offers to the recipient a license to the original Work on the same terms
+ and conditions as the license granted to You under this License.
+ .
+ c. If any provision of this License is invalid or unenforceable under
+ applicable law, it shall not affect the validity or enforceability of
+ the remainder of the terms of this License, and without further action
+ by the parties to this agreement, such provision shall be reformed to
+ the minimum extent necessary to make such provision valid and
+ enforceable.
+ .
+ d. No term or provision of this License shall be deemed waived and no
+ breach consented to unless such waiver or consent shall be in writing
+ and signed by the party to be charged with such waiver or consent. This
+ License constitutes the entire agreement between the parties with
+ respect to the Work licensed here. There are no understandings,
+ agreements or representations with respect to the Work not specified
+ here. Licensor shall not be bound by any additional provisions that may
+ appear in any communication from You.
+ .
+ e. This License may not be modified without the mutual written agreement
+ of the Licensor and You.
+ .
+ f. The rights granted under, and the subject matter referenced, in this
+ License were drafted utilizing the terminology of the Berne Convention
+ for the Protection of Literary and Artistic Works (as amended on
+ September 28, 1979), the Rome Convention of 1961, the WIPO Copyright
+ Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and
+ the Universal Copyright Convention (as revised on July 24, 1971). These
+ rights and subject matter take effect in the relevant jurisdiction in
+ which the License terms are sought to be enforced according to the
+ corresponding provisions of the implementation of those treaty
+ provisions in the applicable national law. If the standard suite of
+ rights granted under applicable copyright law includes additional rights
+ not granted under this License, such additional rights are deemed to be
+ included in the License; this License is not intended to restrict the
+ license of any rights under applicable law.
+ .
+ Creative Commons Notice
+ .
+ Creative Commons is not a party to this License, and makes no warranty
+ whatsoever in connection with the Work. Creative Commons will not be
+ liable to You or any party on any legal theory for any damages
+ whatsoever, including without limitation any general, special,
+ incidental or consequential damages arising in connection to this
+ license. Notwithstanding the foregoing two (2) sentences, if Creative
+ Commons has expressly identified itself as the Licensor hereunder, it
+ shall have all rights and obligations of Licensor.
+ .
+ Except for the limited purpose of indicating to the public that the Work
+ is licensed under the CCPL, Creative Commons does not authorize the use
+ by either party of the trademark "Creative Commons" or any related
+ trademark or logo of Creative Commons without the prior written consent
+ of Creative Commons. Any permitted use will be in compliance with
+ Creative Commons' then-current trademark usage guidelines, as may be
+ published on its website or otherwise made available upon request from
+ time to time. For the avoidance of doubt, this trademark restriction
+ does not form part of this License.
.
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
+ Creative Commons may be contacted at https://creativecommons.org/.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/keepassxc.1 new/debian/keepassxc.1
--- old/debian/keepassxc.1 2019-01-24 00:30:54.822350044 +0100
+++ new/debian/keepassxc.1 1970-01-01 01:00:00.000000000 +0100
@@ -1,12 +0,0 @@
-.TH KEEPASSX 1 "Sep 04, 2006"
-.SH NAME
-keepassxc \- password manager
-.SH SYNOPSIS
-.B keepassxc
-.RI [ files/filelist ]
-.SH DESCRIPTION
-\fBKeePassX\fP is a free/open-source password manager or safe which helps you to manage your passwords in a secure way. You can put all your passwords in one database, which is locked with one master key or a key-disk. So you only have to remember one single master password or insert the key-disk to unlock the whole database. The databases are encrypted using the best and most secure encryption algorithms currently known (AES and Twofish).
-.SH COMMANDS
-.SH AUTHOR
-This manual page was written by David Valot <ptitdav69(a)gmail.com>,
-for the Debian project (but may be used by others).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/manpages new/debian/manpages
--- old/debian/manpages 2019-01-24 00:30:54.822350044 +0100
+++ new/debian/manpages 2019-10-26 23:24:48.696577211 +0200
@@ -1 +0,0 @@
-debian/keepassxc.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/patches/0001-Remove-code-references-to-source-directory.patch new/debian/patches/0001-Remove-code-references-to-source-directory.patch
--- old/debian/patches/0001-Remove-code-references-to-source-directory.patch 2019-03-20 01:01:47.331139345 +0100
+++ new/debian/patches/0001-Remove-code-references-to-source-directory.patch 2019-10-26 21:28:07.942198903 +0200
@@ -8,10 +8,10 @@
src/core/FilePath.cpp | 7 -------
1 file changed, 7 deletions(-)
-Index: keepassxc-2.4.0/src/core/FilePath.cpp
-===================================================================
---- keepassxc-2.4.0.orig/src/core/FilePath.cpp
-+++ keepassxc-2.4.0/src/core/FilePath.cpp
+diff --git a/src/core/FilePath.cpp b/src/core/FilePath.cpp
+index 5b03227..e62d196 100644
+--- a/src/core/FilePath.cpp
++++ b/src/core/FilePath.cpp
@@ -219,10 +219,6 @@ FilePath::FilePath()
if (false) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/patches/0002-tests-Adjust-entropy-for-system-wide-zxcvbn.patch new/debian/patches/0002-tests-Adjust-entropy-for-system-wide-zxcvbn.patch
--- old/debian/patches/0002-tests-Adjust-entropy-for-system-wide-zxcvbn.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/debian/patches/0002-tests-Adjust-entropy-for-system-wide-zxcvbn.patch 2019-10-26 21:28:07.942198903 +0200
@@ -0,0 +1,68 @@
+From: Julian Andres Klode <jak(a)debian.org>
+Date: Fri, 6 Sep 2019 21:37:21 +0200
+Subject: tests: Adjust entropy for system-wide zxcvbn
+
+Adjust the tests in TestGui, but disable the
+one in testcli, as it's hard to follow if it
+fails, and we're reasonably certain that the
+GUI test is fine (and the CLI test upstream).
+---
+ tests/TestCli.cpp | 4 ++--
+ tests/gui/TestGui.cpp | 10 +++++-----
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/tests/TestCli.cpp b/tests/TestCli.cpp
+index 9574f6d..b650f8d 100644
+--- a/tests/TestCli.cpp
++++ b/tests/TestCli.cpp
+@@ -589,8 +589,8 @@ void TestCli::testEstimate()
+ out.seek(0);
+ auto result = out.readAll();
+ QVERIFY(result.contains("Length " + length));
+- QVERIFY(result.contains("Entropy " + entropy));
+- QVERIFY(result.contains("Log10 " + log10));
++ //QVERIFY(result.contains("Entropy " + entropy));
++ //QVERIFY(result.contains("Log10 " + log10));
+ for (const auto& string : asConst(searchStrings)) {
+ QVERIFY2(result.contains(string), qPrintable("String " + string + " missing"));
+ }
+diff --git a/tests/gui/TestGui.cpp b/tests/gui/TestGui.cpp
+index 0db2a5d..0e70c5c 100644
+--- a/tests/gui/TestGui.cpp
++++ b/tests/gui/TestGui.cpp
+@@ -658,17 +658,17 @@ void TestGui::testPasswordEntryEntropy()
+
+ editNewPassword->setText("");
+ QTest::keyClicks(editNewPassword, "hello");
+- QCOMPARE(entropyLabel->text(), QString("Entropy: 6.38 bit"));
++ QCOMPARE(entropyLabel->text(), QString("Entropy: 5.78 bit"));
+ QCOMPARE(strengthLabel->text(), QString("Password Quality: Poor"));
+
+ editNewPassword->setText("");
+ QTest::keyClicks(editNewPassword, "helloworld");
+- QCOMPARE(entropyLabel->text(), QString("Entropy: 13.10 bit"));
++ QCOMPARE(entropyLabel->text(), QString("Entropy: 12.51 bit"));
+ QCOMPARE(strengthLabel->text(), QString("Password Quality: Poor"));
+
+ editNewPassword->setText("");
+ QTest::keyClicks(editNewPassword, "password1");
+- QCOMPARE(entropyLabel->text(), QString("Entropy: 4.00 bit"));
++ QCOMPARE(entropyLabel->text(), QString("Entropy: 3.00 bit"));
+ QCOMPARE(strengthLabel->text(), QString("Password Quality: Poor"));
+
+ editNewPassword->setText("");
+@@ -678,12 +678,12 @@ void TestGui::testPasswordEntryEntropy()
+
+ editNewPassword->setText("");
+ QTest::keyClicks(editNewPassword, "Tr0ub4dour&3");
+- QCOMPARE(entropyLabel->text(), QString("Entropy: 30.87 bit"));
++ QCOMPARE(entropyLabel->text(), QString("Entropy: 30.89 bit"));
+ QCOMPARE(strengthLabel->text(), QString("Password Quality: Poor"));
+
+ editNewPassword->setText("");
+ QTest::keyClicks(editNewPassword, "correcthorsebatterystaple");
+- QCOMPARE(entropyLabel->text(), QString("Entropy: 47.98 bit"));
++ QCOMPARE(entropyLabel->text(), QString("Entropy: 47.43 bit"));
+ QCOMPARE(strengthLabel->text(), QString("Password Quality: Weak"));
+
+ editNewPassword->setText("");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/patches/series new/debian/patches/series
--- old/debian/patches/series 2019-01-24 00:30:54.822350044 +0100
+++ new/debian/patches/series 2019-10-26 23:17:50.148450863 +0200
@@ -1 +1,2 @@
-0001-Remove-code-references-to-source-directory.patch
+# 0001-Remove-code-references-to-source-directory.patch
+0002-tests-Adjust-entropy-for-system-wide-zxcvbn.patch
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/rules new/debian/rules
--- old/debian/rules 2019-04-13 00:45:26.316792129 +0200
+++ new/debian/rules 2019-10-26 21:28:07.942198903 +0200
@@ -1,26 +1,30 @@
#!/usr/bin/make -f
# -*- makefile -*-
+GITREV=$(shell dpkg-parsechangelog -S Version | sed -n 's/.*+git.*\.\(.*\)/\1/p')
include /usr/share/dpkg/architecture.mk
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
export LC_ALL := C.UTF-8
%:
- dh $@ --parallel
+ dh $@
override_dh_auto_configure:
if [ -e src/zxcvbn/ ]; then rm -r src/zxcvbn/ ; fi
dh_auto_configure -- -DWITH_TESTS=ON \
- -DKEEPASSXC_BUILD_TYPE="Release" \
- -DWITH_XC_UPDATECHECK=OFF \
+ -DGIT_HEAD_OVERRIDE=${GITREV} \
+ -DKEEPASSXC_BUILD_TYPE="PreRelease" \
-DWITH_GUI_TESTS=OFF \
-DWITH_XC_KEESHARE_SECURE=ON \
+ -DWITH_XC_UPDATECHECK=OFF \
-DWITH_XC_ALL=ON
-# override_dh_auto_test:
-# dh_auto_test -- ARGS+="-E testgui"
-# xvfb-run -a --server-args="-screen 0 800x600x24" dh_auto_test -- ARGS+="-R testgui" || true
+#override_dh_auto_test:
+# dh_auto_test -- ARGS+="-E 'test(cli|gui)'"
+# # testcli and testgui use X, and have horrible X clipboard tests that
+# # randomly fail, so ignore failures
+# xvfb-run -a --server-args="-screen 0 800x600x24" dh_auto_test -- ARGS+="-R 'test(cli|gui)'" || true
override_dh_makeshlibs:
# keepassx only ships plugins
++++++ keepassxc-2.4.3-src.tar.xz -> keepassxc-2.5.0-src.tar.xz ++++++
/work/SRC/openSUSE:Factory/keepassxc/keepassxc-2.4.3-src.tar.xz /work/SRC/openSUSE:Factory/.keepassxc.new.2990/keepassxc-2.5.0-src.tar.xz differ: char 25, line 1
++++++ keepassxc.dsc ++++++
--- /var/tmp/diff_new_pack.2eIlMT/_old 2019-10-31 18:18:21.242202983 +0100
+++ /var/tmp/diff_new_pack.2eIlMT/_new 2019-10-31 18:18:21.242202983 +0100
@@ -2,12 +2,35 @@
Source: keepassxc
Binary: keepassxc
Architecture: any
-Version: 2.4.1-1.1
+Version: 2.5.0-1.1
Maintainer: Julian Andres Klode <jak(a)debian.org>
Homepage: https://www.keepassxc.org/
-Standards-Version: 4.1.3
+Standards-Version: 4.4.0
Vcs-Browser: https://salsa.debian.org/debian/keepassxc
Vcs-Git: https://salsa.debian.org/debian/keepassxc.git
-Build-Depends: cmake, debhelper (>= 10), libargon2-0-dev, libcurl4-gnutls-dev, libgcrypt20-dev, libqt5x11extras5-dev, libsodium-dev, libxtst-dev, libykpers-1-dev, libyubikey-dev, libzxcvbn-dev, qtbase5-dev, qttools5-dev, qttools5-dev-tools, libqt5svg5-dev, libqt5x11extras5-dev, libqrencode-dev, libquazip5-dev, libquazip5-headers, xauth, xvfb, zlib1g-dev
+Build-Depends: cmake,
+ debhelper (>= 10),
+ libargon2-dev | libargon2-0-dev,
+ libcurl4-gnutls-dev,
+ libgcrypt20-dev,
+ libqt5svg5-dev,
+ libqt5x11extras5-dev,
+ libqrencode-dev,
+ libsodium-dev,
+ libxtst-dev,
+ libykpers-1-dev,
+ libyubikey-dev,
+ libzxcvbn-dev,
+ qtbase5-dev,
+ qttools5-dev,
+ qttools5-dev-tools,
+ libqt5svg5-dev,
+ libqt5x11extras5-dev,
+ libqrencode-dev,
+ libquazip5-dev,
+ libreadline-dev,
+ xauth,
+ xvfb,
+ zlib1g-dev
Package-List:
keepassxc deb utils optional arch=any
1
0
Hello community,
here is the log from the commit of package java-13-openjdk for openSUSE:Factory checked in at 2019-10-31 18:17:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/java-13-openjdk (Old)
and /work/SRC/openSUSE:Factory/.java-13-openjdk.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "java-13-openjdk"
Thu Oct 31 18:17:54 2019 rev:2 rq:742826 version:13.0.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/java-13-openjdk/java-13-openjdk.changes 2019-10-09 15:19:26.904499702 +0200
+++ /work/SRC/openSUSE:Factory/.java-13-openjdk.new.2990/java-13-openjdk.changes 2019-10-31 18:18:09.682191017 +0100
@@ -1,0 +2,145 @@
+Fri Oct 25 07:31:08 UTC 2019 - Fridrich Strba <fstrba(a)suse.com>
+
+- Update to upstream tag jdk-13.0.1-9 (October 2019 CPU,
+ bsc#1154212)
+ * Security fixes:
+ + S8209901: Canonical file handling
+ + S8213429, CVE-2019-2933: Windows file handling redux
+ + S8218573, CVE-2019-2945: Better socket support
+ + S8218877: Help transform transformers
+ + S8220186: Improve use of font temporary files
+ + S8220302, CVE-2019-2949: Better Kerberos ccache handling
+ + S8221497: Optional Panes in Swing
+ + S8221858, CVE-2019-2958: Build Better Processes
+ + S8222684, CVE-2019-2964: Better support for patterns
+ + S8222690, CVE-2019-2962: Better Glyph Images
+ + S8223163: Better pattern recognition
+ + S8223505, CVE-2019-2973: Better pattern compilation
+ + S8223518, CVE-2019-2975: Unexpected exception in jjs
+ + S8223886: Add in font table referene
+ + S8223892, CVE-2019-2978: Improved handling of jar files
+ + S8224025: Fix for JDK-8220302 is not complete
+ + S8224062, CVE-2019-2977: Improve String index handling
+ + S8224532, CVE-2019-2981: Better Path supports
+ + S8224915, CVE-2019-2983: Better serial attributes
+ + S8225286, CVE-2019-2987: Better rendering of native glyphs
+ + S8225292, CVE-2019-2988: Better Graphics2D drawing
+ + S8225298, CVE-2019-2989: Improve TLS connection support
+ + S8225597, CVE-2019-2992: Enhance font glyph mapping
+ + S8226765, CVE-2019-2999: Commentary on Javadoc comments
+ + S8227601: Better collection of references
+ + S8228825, CVE-2019-2894: Enhance ECDSA operations
+ * Other fixes:
+ + S8185898: setRequestProperty(key, null) results in HTTP
+ header without colon in request
+ + S8191521: handle long relative path specified in
+ -Xbootclasspath/a on windows
+ + S8209790: SA tools not providing option to connect to debug
+ server
+ + S8212328: Exceptional throw cases
+ + S8212970: TZ database in "vanguard" format support
+ + S8213431: Improve file protocol handling
+ + S8213432: Better copies of CopiesList
+ + S8215367: Better Collection of References
+ + S8216381: More limited privilege usage
+ + S8217563: Improve realm maintenance
+ + S8217676: Upgrade libpng to 1.6.37
+ + S8218863: Better endpoint checks
+ + S8218873: Improve JSSE endpoint checking
+ + S8218876: Improve PNG support options
+ + S8219082: jdk/jfr/event/runtime/TestShutdownEvent.java failed
+ in validateStackTrace()
+ + S8219775: Certificate validation improvements
+ + S8220517: Enhanced GIF support
+ + S8221345: Better Poly1305 support
+ + S8221518: Normalize normalization
+ + S8222108: Reduce minRefreshTime for updating remote printer
+ list on Windows
+ + S8222678: Improve TLS negotiation
+ + S8222751: closed/test/jdk/sun/security/util/
+ /DerIndefLenConverter/IndefBerPkcs12.java fail
+ + S8222968: ByteArrayPublisher is not thread-safe resulting in
+ broken re-use of HttpRequests
+ + S8223326: Regression introduced by CPU sync:
+ java.security.AccessControlException: access denied
+ ("java.net.NetPermission" "setSocketImpl")
+ + S8223869: Problem list
+ java/awt/FontMetrics/MaxAdvanceIsMax.java on more platforms
+ + S8224505: TestQuotedLogOutput failure after ProcessBuilder
+ changes
+ + S8225146: Accessibility issues in
+ javax/swing/plaf/nimbus/doc-files/properties.html
+ + S8225425: java.lang.UnsatisfiedLinkError: net.dll: Can't find
+ dependent libraries
+ + S8225505: ctrl-F1 does not show the tooltip of a menu item
+ (JMenuItems)
+ + S8226468: [aix] loadquery failed error message displayed
+ + S8226530: ZipFile reads wrong entry size from ZIP64 entries
+ + S8226543: Reduce GC pressure during message digest
+ calculations in password-based encryption
+ + S8227171: provide function names in native stack trace on aix
+ with xlc16
+ + S8227201: Bump version string for 13.0.1
+ + S8227230: Backout JDK-8215367 from update releases
+ + S8227435: Perf::attach() should not throw a
+ java.lang.Exception
+ + S8227594: sadebugd/DebugdConnectTest.java fails due to
+ "java.rmi.NotBoundException: SARemoteDebugger"
+ + S8227662: freetype seeks to index at the end of the font data
+ + S8228469: (tz) Upgrade time-zone data to tzdata2019b
+ + S8228485: JVM crashes when bootstrap method for condy
+ triggers loading of class whose static initializer throws exception
+ + S8228649: [PPC64] SA reads wrong slots from interpreter frames
+ + S8228711: Path rendered incorrectly when it goes outside the
+ clipping region
+ + S8229002: Shenandoah: Missing node types in
+ ShenandoahLoadReferenceBarrier::needs_barrier_impl()
+ + S8229118: [TESTBUG] serviceability/sa/ClhsdbFindPC fails on
+ AArch64
+ + S8229182: runtime/containers/docker/TestMemoryAwareness.java
+ test fails on SLES12
+ + S8229242: JDK 13.0.1 L10n resource files update msgdrop 10
+ + S8229284: jdk/internal/platform/cgroup/TestCgroupMetrics.java
+ fails for - memory:getMemoryUsage
+ + S8229706: java/net/MulticastSocket/NoLoopbackPackets.java
+ fails on some AIX machines
+ + S8229773: Resolve permissions for code source URLs lazily
+ + S8229800: WindowsServerCore 1809 does not provide d2d1.dll
+ library required by awt.dll
+ + S8229872: (fs) Increase buffer size used with getmntent
+ + S8229887: (zipfs) zip file corruption when replacing an
+ existing STORED entry
+ + S8229925: [s390, PPC64] Exception check missing in interpreter
+ + S8230110: TestLinkageErrorInGenerateOopMap times out
+ + S8230115: Problemlist JFR TestNetworkUtilization test
+ + S8230303: JDB hangs when running monitor command
+ + S8230425: Shenandoah forces +UseNUMAInterleaving even after
+ explicitly disabled
+ + S8230565: ZGC: Redesign C2 load barrier to expand on the
+ MachNode level
+ + S8230646: Epsilon does not extend TLABs to max size
+ + S8230666: Exclude
+ serviceability/sa/TestInstanceKlassSize.java on linuxppc64 and
+ linuxppc64le
+ + S8230728: Thin stroked shapes are not rendered if affine
+ transform has flip bit
+ + S8230782: Robot.createScreenCapture() fails if
+ "awt.robot.gtk" is set to false
+ + S8230850: Test sun/tools/jcmd/TestProcessHelper.java fails
+ intermittently
+ + S8230943: False deadlock detection with
+ -XX:+CIPrintCompileQueue after JDK-8163511
+ + S8231098: (tz) Upgrade time-zone data to tzdata2019c
+ + S8231197: Shenandoah: JVMTI heap walking cleanup crashes with
+ NULL forwardee
+ + S8231405: [Shenandoah] guarantee(d != NULL) failed: Null
+ dominator info
+ + S8231583: Shenandoah: Fix register clash in
+ SBSA::resolve_forwarding_pointer() borrowing
+ + S8231770: Test java/util/zip/FlaterTest.java fails with
+ -Xcheck:jni
+ + S8231885: Fix/remove malformed assert in os_windows.cpp
+ + S8231887: ComodoCA.java fails because certificate was revoked
+ + S8231930: Windows build fails after JDK-8191521
+
+-------------------------------------------------------------------
Old:
----
9c250a7600e1.tar.bz2
New:
----
8d03d066c4e8.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ java-13-openjdk.spec ++++++
--- /var/tmp/diff_new_pack.Kw5Jgr/_old 2019-10-31 18:18:16.274197841 +0100
+++ /var/tmp/diff_new_pack.Kw5Jgr/_new 2019-10-31 18:18:16.302197870 +0100
@@ -32,13 +32,13 @@
# Standard JPackage naming and versioning defines.
%global featurever 13
%global interimver 0
-%global updatever 0
+%global updatever 1
%global patchver 0
-%global datever 2019-09-17
-%global buildver 33
+%global datever 2019-10-15
+%global buildver 9
%global hg_project jdk-updates
%global hg_repository jdk13u
-%global hg_revision 9c250a7600e1
+%global hg_revision 8d03d066c4e8
%global icedtea_sound_version 1.0.1
%global java_atk_wrapper_version 0.33.2
# JavaEE modules
++++++ 9c250a7600e1.tar.bz2 -> 8d03d066c4e8.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/java-13-openjdk/9c250a7600e1.tar.bz2 /work/SRC/openSUSE:Factory/.java-13-openjdk.new.2990/8d03d066c4e8.tar.bz2 differ: char 11, line 1
1
0
Hello community,
here is the log from the commit of package azure-cli-vm for openSUSE:Factory checked in at 2019-10-31 18:17:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/azure-cli-vm (Old)
and /work/SRC/openSUSE:Factory/.azure-cli-vm.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "azure-cli-vm"
Thu Oct 31 18:17:52 2019 rev:7 rq:742731 version:2.2.23
Changes:
--------
--- /work/SRC/openSUSE:Factory/azure-cli-vm/azure-cli-vm.changes 2019-06-05 11:46:05.250996958 +0200
+++ /work/SRC/openSUSE:Factory/.azure-cli-vm.new.2990/azure-cli-vm.changes 2019-10-31 18:17:59.918180909 +0100
@@ -1,0 +2,9 @@
+Thu Oct 24 12:12:45 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 2.2.23
+ + For detailed information about changes see the
+ HISTORY.txt file provided with this package
+- Update Requires from setup.py
+
+-------------------------------------------------------------------
Old:
----
azure-cli-vm-2.2.15.tar.gz
New:
----
azure-cli-vm-2.2.23.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ azure-cli-vm.spec ++++++
--- /var/tmp/diff_new_pack.8tA6QQ/_old 2019-10-31 18:18:01.466182511 +0100
+++ /var/tmp/diff_new_pack.8tA6QQ/_new 2019-10-31 18:18:01.518182565 +0100
@@ -17,7 +17,7 @@
Name: azure-cli-vm
-Version: 2.2.15
+Version: 2.2.23
Release: 0
Summary: Microsoft Azure CLI 'vm' Command Module
License: MIT
@@ -35,12 +35,13 @@
Requires: azure-cli-nspkg
Requires: python3-azure-keyvault >= 1.1.0
Requires: python3-azure-mgmt-authorization >= 0.50.0
-Requires: python3-azure-mgmt-compute >= 4.4.0
+Requires: python3-azure-mgmt-compute >= 5.0.0
+Requires: python3-azure-mgmt-imagebuilder >= 0.2.1
Requires: python3-azure-mgmt-keyvault >= 1.1.0
Requires: python3-azure-mgmt-marketplaceordering >= 0.1.0
Requires: python3-azure-mgmt-msi >= 0.2.0
-Requires: python3-azure-mgmt-network >= 2.4.0
-Requires: python3-azure-multiapi-storage >= 0.2.2
+Requires: python3-azure-mgmt-network >= 3.0.0
+Requires: python3-azure-multiapi-storage >= 0.2.3
Requires: python3-azure-nspkg >= 3.0.0
Conflicts: azure-cli < 2.0.0
++++++ azure-cli-vm-2.2.15.tar.gz -> azure-cli-vm-2.2.23.tar.gz ++++++
++++ 5908 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package azure-cli-telemetry for openSUSE:Factory checked in at 2019-10-31 18:17:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/azure-cli-telemetry (Old)
and /work/SRC/openSUSE:Factory/.azure-cli-telemetry.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "azure-cli-telemetry"
Thu Oct 31 18:17:50 2019 rev:4 rq:742730 version:1.0.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/azure-cli-telemetry/azure-cli-telemetry.changes 2019-06-05 11:45:58.866998562 +0200
+++ /work/SRC/openSUSE:Factory/.azure-cli-telemetry.new.2990/azure-cli-telemetry.changes 2019-10-31 18:17:54.986175803 +0100
@@ -1,0 +2,12 @@
+Thu Oct 24 12:12:41 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 1.0.4
+ + For detailed information about changes see the
+ HISTORY.txt file provided with this package
+- Drop patch to relax version requires in setup.py, it's
+ not required as the dependencies are managed by RPM
+ + act_relax-requires-versions.patch
+- Update Requires from setup.py
+
+-------------------------------------------------------------------
Old:
----
act_relax-requires-versions.patch
azure-cli-telemetry-1.0.1.tar.gz
New:
----
azure-cli-telemetry-1.0.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ azure-cli-telemetry.spec ++++++
--- /var/tmp/diff_new_pack.moIkPj/_old 2019-10-31 18:17:56.718177596 +0100
+++ /var/tmp/diff_new_pack.moIkPj/_new 2019-10-31 18:17:56.742177621 +0100
@@ -17,7 +17,7 @@
Name: azure-cli-telemetry
-Version: 1.0.1
+Version: 1.0.4
Release: 0
Summary: Microsoft Azure CLI Telemetry Package
License: MIT
@@ -25,15 +25,16 @@
Url: https://github.com/Azure/azure-cli
Source: https://files.pythonhosted.org/packages/source/a/azure-cli-telemetry/azure-…
Source1: LICENSE.txt
-Patch0: act_relax-requires-versions.patch
BuildRequires: azure-cli-nspkg
BuildRequires: fdupes
BuildRequires: python3-azure-nspkg >= 3.0.0
BuildRequires: python3-setuptools
Requires: azure-cli-nspkg
+Requires: python3-applicationinsights < 0.12
Requires: python3-applicationinsights >= 0.11.1
Requires: python3-azure-nspkg >= 3.0.0
-Requires: python3-portalocker >= 1.2.1
+Requires: python3-portalocker < 2.0
+Requires: python3-portalocker >= 1.2
Conflicts: azure-cli < 2.0.0
BuildArch: noarch
@@ -49,7 +50,6 @@
%prep
%setup -q -n azure-cli-telemetry-%{version}
-%patch0 -p1
%build
install -m 644 %{SOURCE1} %{_builddir}/azure-cli-telemetry-%{version}
++++++ azure-cli-telemetry-1.0.1.tar.gz -> azure-cli-telemetry-1.0.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/HISTORY.rst new/azure-cli-telemetry-1.0.4/HISTORY.rst
--- old/azure-cli-telemetry-1.0.1/HISTORY.rst 2019-01-25 20:43:40.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/HISTORY.rst 2019-10-11 10:59:52.000000000 +0200
@@ -2,10 +2,22 @@
Release History
===============
+1.0.4
++++++
+* MANIFEST file change to fix wheel install
+
+1.0.3
++++++
+* Indicate Python 3.7 support
+
+1.0.2
++++++
+* Minor fixes
+
1.0.1
+++++
* Minor fixes
1.0.0
+++++
-* Initialize the azure-cli-telemetry package.
\ No newline at end of file
+* Initialize the azure-cli-telemetry package.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/MANIFEST.in new/azure-cli-telemetry-1.0.4/MANIFEST.in
--- old/azure-cli-telemetry-1.0.1/MANIFEST.in 2019-01-25 20:43:40.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/MANIFEST.in 2019-10-11 10:59:52.000000000 +0200
@@ -1 +1,2 @@
include *.rst
+include azure_bdist_wheel.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/PKG-INFO new/azure-cli-telemetry-1.0.4/PKG-INFO
--- old/azure-cli-telemetry-1.0.1/PKG-INFO 2019-01-25 20:44:23.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/PKG-INFO 2019-10-11 11:00:01.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: azure-cli-telemetry
-Version: 1.0.1
+Version: 1.0.4
Summary: Microsoft Azure CLI Telemetry Package
Home-page: https://github.com/Azure/azure-cli
Author: Microsoft Corporation
@@ -21,6 +21,18 @@
Release History
===============
+ 1.0.4
+ +++++
+ * MANIFEST file change to fix wheel install
+
+ 1.0.3
+ +++++
+ * Indicate Python 3.7 support
+
+ 1.0.2
+ +++++
+ * Minor fixes
+
1.0.1
+++++
* Minor fixes
@@ -28,6 +40,7 @@
1.0.0
+++++
* Initialize the azure-cli-telemetry package.
+
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
@@ -39,4 +52,5 @@
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: License :: OSI Approved :: MIT License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/azure_bdist_wheel.py new/azure-cli-telemetry-1.0.4/azure_bdist_wheel.py
--- old/azure-cli-telemetry-1.0.1/azure_bdist_wheel.py 1970-01-01 01:00:00.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/azure_bdist_wheel.py 2019-10-11 10:59:52.000000000 +0200
@@ -0,0 +1,54 @@
+#-------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for
+# license information.
+#--------------------------------------------------------------------------
+
+from distutils import log as logger
+import os.path
+
+from wheel.bdist_wheel import bdist_wheel
+class azure_bdist_wheel(bdist_wheel):
+ """The purpose of this class is to build wheel a little differently than the sdist,
+ without requiring to build the wheel from the sdist (i.e. you can build the wheel
+ directly from source).
+ """
+
+ description = "Create an Azure wheel distribution"
+
+ user_options = bdist_wheel.user_options + \
+ [('azure-namespace-package=', None,
+ "Name of the deepest nspkg used")]
+
+ def initialize_options(self):
+ bdist_wheel.initialize_options(self)
+ self.azure_namespace_package = None
+
+ def finalize_options(self):
+ bdist_wheel.finalize_options(self)
+ if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"):
+ raise ValueError("azure_namespace_package must finish by -nspkg")
+
+ def run(self):
+ if not self.distribution.install_requires:
+ self.distribution.install_requires = []
+ self.distribution.install_requires.append(
+ "{}>=2.0.0".format(self.azure_namespace_package))
+ bdist_wheel.run(self)
+
+ def write_record(self, bdist_dir, distinfo_dir):
+ if self.azure_namespace_package:
+ # Split and remove last part, assuming it's "nspkg"
+ subparts = self.azure_namespace_package.split('-')[0:-1]
+ folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))]
+ for azure_sub_package in folder_with_init:
+ init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py')
+ if os.path.isfile(init_file):
+ logger.info("manually remove {} while building the wheel".format(init_file))
+ os.remove(init_file)
+ else:
+ raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file))
+ bdist_wheel.write_record(self, bdist_dir, distinfo_dir)
+cmdclass = {
+ 'bdist_wheel': azure_bdist_wheel,
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/azure_cli_telemetry.egg-info/PKG-INFO new/azure-cli-telemetry-1.0.4/azure_cli_telemetry.egg-info/PKG-INFO
--- old/azure-cli-telemetry-1.0.1/azure_cli_telemetry.egg-info/PKG-INFO 2019-01-25 20:44:23.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/azure_cli_telemetry.egg-info/PKG-INFO 2019-10-11 11:00:01.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: azure-cli-telemetry
-Version: 1.0.1
+Version: 1.0.4
Summary: Microsoft Azure CLI Telemetry Package
Home-page: https://github.com/Azure/azure-cli
Author: Microsoft Corporation
@@ -21,6 +21,18 @@
Release History
===============
+ 1.0.4
+ +++++
+ * MANIFEST file change to fix wheel install
+
+ 1.0.3
+ +++++
+ * Indicate Python 3.7 support
+
+ 1.0.2
+ +++++
+ * Minor fixes
+
1.0.1
+++++
* Minor fixes
@@ -28,6 +40,7 @@
1.0.0
+++++
* Initialize the azure-cli-telemetry package.
+
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
@@ -39,4 +52,5 @@
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: License :: OSI Approved :: MIT License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/azure_cli_telemetry.egg-info/SOURCES.txt new/azure-cli-telemetry-1.0.4/azure_cli_telemetry.egg-info/SOURCES.txt
--- old/azure-cli-telemetry-1.0.1/azure_cli_telemetry.egg-info/SOURCES.txt 2019-01-25 20:44:23.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/azure_cli_telemetry.egg-info/SOURCES.txt 2019-10-11 11:00:01.000000000 +0200
@@ -1,6 +1,7 @@
HISTORY.rst
MANIFEST.in
README.rst
+azure_bdist_wheel.py
setup.cfg
setup.py
azure/__init__.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/azure_cli_telemetry.egg-info/requires.txt new/azure-cli-telemetry-1.0.4/azure_cli_telemetry.egg-info/requires.txt
--- old/azure-cli-telemetry-1.0.1/azure_cli_telemetry.egg-info/requires.txt 2019-01-25 20:44:23.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/azure_cli_telemetry.egg-info/requires.txt 2019-10-11 11:00:01.000000000 +0200
@@ -1,2 +1,2 @@
-applicationinsights>=0.11.1
-portalocker==1.2.1
+applicationinsights<0.12,>=0.11.1
+portalocker~=1.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure-cli-telemetry-1.0.1/setup.py new/azure-cli-telemetry-1.0.4/setup.py
--- old/azure-cli-telemetry-1.0.1/setup.py 2019-01-25 20:43:40.000000000 +0100
+++ new/azure-cli-telemetry-1.0.4/setup.py 2019-10-11 10:59:52.000000000 +0200
@@ -16,7 +16,7 @@
logger.warn("Wheel is not available, disabling bdist_wheel hook")
cmdclass = {}
-VERSION = "1.0.1"
+VERSION = "1.0.4"
CLASSIFIERS = [
'Development Status :: 5 - Production/Stable',
@@ -29,6 +29,7 @@
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
+ 'Programming Language :: Python :: 3.7',
'License :: OSI Approved :: MIT License',
]
@@ -49,8 +50,8 @@
zip_safe=False,
classifiers=CLASSIFIERS,
install_requires=[
- 'applicationinsights>=0.11.1',
- 'portalocker==1.2.1',
+ 'applicationinsights>=0.11.1,<0.12',
+ 'portalocker~=1.2',
],
packages=[
'azure',
@@ -58,5 +59,8 @@
'azure.cli.telemetry',
'azure.cli.telemetry.components'
],
+ test_requires=[
+ 'mock'
+ ],
cmdclass=cmdclass
)
1
0
Hello community,
here is the log from the commit of package azure-cli-storage for openSUSE:Factory checked in at 2019-10-31 18:17:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/azure-cli-storage (Old)
and /work/SRC/openSUSE:Factory/.azure-cli-storage.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "azure-cli-storage"
Thu Oct 31 18:17:46 2019 rev:7 rq:742729 version:2.4.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/azure-cli-storage/azure-cli-storage.changes 2019-06-05 11:45:48.775001096 +0200
+++ /work/SRC/openSUSE:Factory/.azure-cli-storage.new.2990/azure-cli-storage.changes 2019-10-31 18:17:50.502171162 +0100
@@ -1,0 +2,9 @@
+Thu Oct 24 12:12:33 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 2.4.3
+ + For detailed information about changes see the
+ HISTORY.txt file provided with this package
+- Update Requires from setup.py
+
+-------------------------------------------------------------------
Old:
----
azure-cli-storage-2.3.1.tar.gz
New:
----
azure-cli-storage-2.4.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ azure-cli-storage.spec ++++++
--- /var/tmp/diff_new_pack.9ON9Zv/_old 2019-10-31 18:17:52.274172995 +0100
+++ /var/tmp/diff_new_pack.9ON9Zv/_new 2019-10-31 18:17:52.306173029 +0100
@@ -17,7 +17,7 @@
Name: azure-cli-storage
-Version: 2.3.1
+Version: 2.4.3
Release: 0
Summary: Microsoft Azure CLI 'storage' Command Module
License: MIT
@@ -33,8 +33,8 @@
Requires: azure-cli-command-modules-nspkg
Requires: azure-cli-core
Requires: azure-cli-nspkg
-Requires: python3-azure-mgmt-storage >= 3.1.1
-Requires: python3-azure-multiapi-storage >= 0.2.2
+Requires: python3-azure-mgmt-storage >= 3.3.0
+Requires: python3-azure-multiapi-storage >= 0.2.3
Requires: python3-azure-nspkg >= 3.0.0
Conflicts: azure-cli < 2.0.0
++++++ azure-cli-storage-2.3.1.tar.gz -> azure-cli-storage-2.4.3.tar.gz ++++++
++++ 2923 lines of diff (skipped)
1
0