Hello community,

here is the log from the commit of package kapidox for openSUSE:Factory checked 
in at 2020-06-15 20:28:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kapidox (Old)
 and      /work/SRC/openSUSE:Factory/.kapidox.new.3606 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kapidox"

Mon Jun 15 20:28:25 2020 rev:78 rq:814335 version:5.71.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kapidox/kapidox.changes  2020-05-11 
16:30:39.310437006 +0200
+++ /work/SRC/openSUSE:Factory/.kapidox.new.3606/kapidox.changes        
2020-06-15 20:28:32.537965208 +0200
@@ -1,0 +2,17 @@
+Sun Jun  7 08:06:18 UTC 2020 - Christophe Giboudeaux <[email protected]>
+
+- Update to 5.71.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/kde-frameworks-5.71.0
+- Changes since 5.70.0:
+  * Use logo.png file as logo as default, if present
+  * Change public_example_dir to public_example_dirs, to enable multiple dirs
+  * Drop code for Python2 support
+  * Adapt links to repo to invent.kde.org
+  * Fix link to kde.org impressum
+  * History pages of KDE4 got merged into general history page
+  * Unbreak generation with dep diagrams with Python 3 (break Py2)
+  * Export metalist to json file
+
+-------------------------------------------------------------------

Old:
----
  kapidox-5.70.0.tar.xz
  kapidox-5.70.0.tar.xz.sig

New:
----
  kapidox-5.71.0.tar.xz
  kapidox-5.71.0.tar.xz.sig

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

Other differences:
------------------
++++++ kapidox.spec ++++++
--- /var/tmp/diff_new_pack.OkvQHb/_old  2020-06-15 20:28:33.517968603 +0200
+++ /var/tmp/diff_new_pack.OkvQHb/_new  2020-06-15 20:28:33.521968617 +0200
@@ -18,13 +18,13 @@
 
 # Only needed for the package signature condition
 %bcond_without lang
-%define _tar_path 5.70
+%define _tar_path 5.71
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
 %{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | 
awk -F. '{print $1"."$2}')}
 Name:           kapidox
-Version:        5.70.0
+Version:        5.71.0
 Release:        0
 Summary:        Scripts and data for building API documentation
 License:        BSD-2-Clause


++++++ kapidox-5.70.0.tar.xz -> kapidox-5.71.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/.arcconfig 
new/kapidox-5.71.0/.arcconfig
--- old/kapidox-5.70.0/.arcconfig       2020-05-01 17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/.arcconfig       1970-01-01 01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-{
-    "project.name" : "KApidox",
-    "phabricator.uri" : "https://phabricator.kde.org/";
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/README.md new/kapidox-5.71.0/README.md
--- old/kapidox-5.70.0/README.md        2020-05-01 17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/README.md        2020-06-01 17:27:12.000000000 +0200
@@ -15,8 +15,8 @@
 ## Dependencies
 
 ### Required
-Python 2 or 3 is required to run the scripts.  Whichever version of python you
-use needs to have the jinja2 and yaml (or pyyaml) modules.
+Python 3 is required to run the scripts. Additionally you
+need to have the jinja2 and yaml (or pyyaml) modules.
 
 The following command should install them for the current user:
 
@@ -49,7 +49,7 @@
 
 Writing dox is beyond the scope of this documentation -- see the notes at
 <https://community.kde.org/Frameworks/Frameworks_Documentation_Policy> and the 
[doxygen
-manual](http://doxygen.nl/manual/docblocks.html).
+manual](https://doxygen.nl/manual/docblocks.html).
 
 To allow code to handle the case of being processed by kapidox a C/C++ 
preprocessor macro
 is set as defined when run: `K_DOXYGEN` (since v5.67.0).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/docs/metainfo_syntax.md 
new/kapidox-5.71.0/docs/metainfo_syntax.md
--- old/kapidox-5.70.0/docs/metainfo_syntax.md  2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/docs/metainfo_syntax.md  2020-06-01 17:27:12.000000000 
+0200
@@ -17,7 +17,7 @@
 group: frameworks # optional
 subgroup: tier 1 # optional, a group must be defined
 type: functional  # optional
-logo: relative/path/to/logo.png # Used only if not part of a group
+logo: relative/path/to/logo.png # Used only if not part of a group, defaults 
to logo.png if present
 platforms:  # optional, name accepted: all, Linux, Windows, MacOSX
     - name: Linux
       note: Functional only with running BlueZ 5 # optional
@@ -26,7 +26,7 @@
   - src1
   - src2
 public_doc_dir: docs  # optional, default to docs
-public_example_dir: examples  # optional, default to examples
+public_example_dirs: examples  # optional, default to examples, must be a list
 
 portingAid: true/false  # optional, default to false
 deprecated: true/false  # optional, default to false
@@ -51,7 +51,7 @@
     - Windows (partial)
     - MacOSX (partial)
   description: Providing everything from simple utility classes to ..
-  logo: relative/path/to/logo.png
+  logo: relative/path/to/logo.png # optional, defaults to logo.png if present
   long_description: # optional, one item per paragraph, html authorized
     - The KDE Frameworks build on the <a href="https://www.qt.io";>Qt
       framework</a>, providing everything from simple utility classes (such as
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/setup.py new/kapidox-5.71.0/setup.py
--- old/kapidox-5.70.0/setup.py 2020-05-01 17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/setup.py 2020-06-01 17:27:12.000000000 +0200
@@ -1,4 +1,4 @@
-#! /usr/bin/env python
+#! /usr/bin/env python3
 # -*- coding: utf-8 -*-
 
 from distutils.core import setup
@@ -14,7 +14,7 @@
 
 setup(
         name='kapidox',
-        version='5.70.0',
+        version='5.71.0',
         description='KDE API documentation generation tools',
         maintainer = 'Olivier Churlaud',
         maintainer_email = '[email protected]',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/depdiagram-generate 
new/kapidox-5.71.0/src/depdiagram-generate
--- old/kapidox-5.70.0/src/depdiagram-generate  2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/src/depdiagram-generate  2020-06-01 17:27:12.000000000 
+0200
@@ -1,4 +1,4 @@
-#! /usr/bin/env python
+#! /usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 # Copyright 2014  Aurélien Gâteau <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/depdiagram-prepare 
new/kapidox-5.71.0/src/depdiagram-prepare
--- old/kapidox-5.70.0/src/depdiagram-prepare   2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/src/depdiagram-prepare   2020-06-01 17:27:12.000000000 
+0200
@@ -1,4 +1,4 @@
-#! /usr/bin/env python
+#! /usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 # Copyright 2014  Aurélien Gâteau <[email protected]>
@@ -24,9 +24,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 import argparse
 import os
 import logging
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/argparserutils.py 
new/kapidox-5.71.0/src/kapidox/argparserutils.py
--- old/kapidox-5.70.0/src/kapidox/argparserutils.py    2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/argparserutils.py    2020-06-01 
17:27:12.000000000 +0200
@@ -23,9 +23,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 import argparse
 import logging
 import os
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/data/Doxyfile.global 
new/kapidox-5.71.0/src/kapidox/data/Doxyfile.global
--- old/kapidox-5.70.0/src/kapidox/data/Doxyfile.global 2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/data/Doxyfile.global 2020-06-01 
17:27:12.000000000 +0200
@@ -1,5 +1,5 @@
 # Default settings for KDE projects
-# See http://www.doxygen.nl/manual/config.html for help
+# See https://www.doxygen.nl/manual/config.html for help
 
 QUIET = YES
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kapidox-5.70.0/src/kapidox/data/templates/footer.html 
new/kapidox-5.71.0/src/kapidox/data/templates/footer.html
--- old/kapidox-5.70.0/src/kapidox/data/templates/footer.html   2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/data/templates/footer.html   2020-06-01 
17:27:12.000000000 +0200
@@ -1,3 +1,3 @@
-<p>Report problems with this website to <a 
href="https://go.kde.org/u/systickets";>our bug tracking system</a>.<br />
+<p>Report problems with this website to <a 
href="https://go.kde.org/systickets";>our bug tracking system</a>.<br />
 Contact the specific authors with questions and comments about the page 
contents.<p>
-<p>KDE<sup>&#174;</sup> and <a href="/media/images/kde_gear_black.png">the K 
Desktop Environment<sup>&#174;</sup> logo</a> are registered trademarks of <a 
href="https://ev.kde.org/"; title="Homepage of the KDE non-profit 
Organization">KDE e.V.</a> | <a 
href="https://www.kde.org/contact/impressum.php";>Legal</a></p>
+<p>KDE<sup>&#174;</sup> and <a href="/media/images/kde_gear_black.png">the K 
Desktop Environment<sup>&#174;</sup> logo</a> are registered trademarks of <a 
href="https://ev.kde.org/"; title="Homepage of the KDE non-profit 
Organization">KDE e.V.</a> | <a 
href="https://kde.org/community/whatiskde/impressum";>Legal</a></p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kapidox-5.70.0/src/kapidox/data/templates/frontpage-sidebar.html 
new/kapidox-5.71.0/src/kapidox/data/templates/frontpage-sidebar.html
--- old/kapidox-5.70.0/src/kapidox/data/templates/frontpage-sidebar.html        
2020-05-01 17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/data/templates/frontpage-sidebar.html        
2020-06-01 17:27:12.000000000 +0200
@@ -26,8 +26,7 @@
     <div class="menu-content">
     <ul>
         <li><a href="https://api.kde.org/cmake/modules.html";>KDE CMake 
Modules</a></li>
-        <li><a href="https://api.kde.org/history4.php";>KDE4 Versions</a></li>
-        <li><a href="https://api.kde.org/history.php";>KDE3 and older 
versions</a></li>
+        <li><a href="https://api.kde.org/history.php";>Old KDE Versions</a></li>
     <ul>
     </div>
 </div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kapidox-5.70.0/src/kapidox/data/templates/libinfo.html 
new/kapidox-5.71.0/src/kapidox/data/templates/libinfo.html
--- old/kapidox-5.70.0/src/kapidox/data/templates/libinfo.html  2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/data/templates/libinfo.html  2020-06-01 
17:27:12.000000000 +0200
@@ -36,10 +36,14 @@
         <dd><pre class="fragment">QT +={% for lib in 
fwinfo.libraries|selectattr("qmake") %} {{ lib.qmake }}{% endfor %} {% for line 
in fwinfo.qmakepro %}<br/>{{ line }} {% endfor %}</pre></dd>
     {% endif %}
 
-      <dt>Clone</dt>
-        <dd><pre class="fragment">git clone git://anongit.kde.org/{{ 
fwinfo.name }}.git</pre></dd>
+    {% if fwinfo.repopath %}
+      <dt>Clone with SSH</dt>
+        <dd><pre class="fragment">git clone [email protected]:{{ 
fwinfo.repopath }}.git</pre></dd>
+      <dt>Clone with HTTPS</dt>
+        <dd><pre class="fragment">git clone https://invent.kde.org/{{ 
fwinfo.repopath }}.git</pre></dd>
       <dt>Browse source</dt>
-        <dd>{{ fwinfo.fancyname }} on <a href="https://cgit.kde.org/{{ 
fwinfo.name }}.git/tree">cgit.kde.org</a></dd>
+        <dd>{{ fwinfo.fancyname }} on <a href="https://invent.kde.org/{{ 
fwinfo.repopath }}.git">invent.kde.org</a></dd>
+    {% endif %}
     </dl>
   </div>
 </div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kapidox-5.70.0/src/kapidox/data/templates/library.html 
new/kapidox-5.71.0/src/kapidox/data/templates/library.html
--- old/kapidox-5.70.0/src/kapidox/data/templates/library.html  2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/data/templates/library.html  2020-06-01 
17:27:12.000000000 +0200
@@ -23,7 +23,7 @@
   This file is part of the KDE documentation.<br/>
   Documentation copyright &copy; {{copyright}}.<br/>
   Generated on {{ dox.datetime }} by
-  <a href="http://www.doxygen.org/";>doxygen</a> {{ dox.doxygenversion }} 
written
+  <a href="https://www.doxygen.org/";>doxygen</a> {{ dox.doxygenversion }} 
written
   by <a href="mailto:[email protected]";>Dimitri van Heesch</a>, 
&copy;&nbsp;1997-2006
   <p>
   KDE's <a 
href="https://community.kde.org/Frameworks/Frameworks_Documentation_Policy";>Doxygen
 guidelines</a> are available online.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/depdiagram/framework.py 
new/kapidox-5.71.0/src/kapidox/depdiagram/framework.py
--- old/kapidox-5.70.0/src/kapidox/depdiagram/framework.py      2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/depdiagram/framework.py      2020-06-01 
17:27:12.000000000 +0200
@@ -22,6 +22,9 @@
 # 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.
+
+from functools import reduce
+
 class Framework(object):
     """
     A framework has a tier, a name, a collection of targets it provides.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/depdiagram/frameworkdb.py 
new/kapidox-5.71.0/src/kapidox/depdiagram/frameworkdb.py
--- old/kapidox-5.70.0/src/kapidox/depdiagram/frameworkdb.py    2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/depdiagram/frameworkdb.py    2020-06-01 
17:27:12.000000000 +0200
@@ -164,14 +164,13 @@
         for dot_file in dot_files:
             yaml_file = dot_file.replace(".dot", ".yaml")
             with open(yaml_file) as f:
-                dct = yaml.load(f)
+                dct = yaml.safe_load(f)
 
             if 'tier' not in dct:
                 # This mean it's not a frameworks
                 continue
 
             tier = dct["tier"]
-            dot_file = dot_file.encode("utf-8")
             fw = parser.parse(tier, dot_file)
 
             _add_extra_dependencies(fw, dct)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/depdiagram/generate.py 
new/kapidox-5.71.0/src/kapidox/depdiagram/generate.py
--- old/kapidox-5.70.0/src/kapidox/depdiagram/generate.py       2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/depdiagram/generate.py       2020-06-01 
17:27:12.000000000 +0200
@@ -24,6 +24,7 @@
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 import logging
 import itertools
+from functools import cmp_to_key
 
 from kapidox.depdiagram.block import Block, quote
 from kapidox.depdiagram.framework import Framework
@@ -112,7 +113,7 @@
                     # depend on other frameworks from that tier are listed 
after
                     # their dependees.
                     frameworks = list(frameworks)
-                    for fw in sorted(frameworks, cmp=FrameworkCmp(self.db)):
+                    for fw in sorted(frameworks, 
key=cmp_to_key(FrameworkCmp(self.db))):
                         if self.detailed:
                             self.write_detailed_framework(tier_block, fw)
                         else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/depdiagram/gvutils.py 
new/kapidox-5.71.0/src/kapidox/depdiagram/gvutils.py
--- old/kapidox-5.70.0/src/kapidox/depdiagram/gvutils.py        2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/depdiagram/gvutils.py        2020-06-01 
17:27:12.000000000 +0200
@@ -27,8 +27,6 @@
 A set of classes and functions to make it easier to work with Graphviz graphs
 """
 
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 import gv
 
 
@@ -42,11 +40,11 @@
 
     @property
     def label(self):
-        return gv.getv(self.handle, b"label")
+        return gv.getv(self.handle, "label")
 
     @property
     def shape(self):
-        return gv.getv(self.handle, b"shape")
+        return gv.getv(self.handle, "shape")
 
 
 class Edge(object):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/doxyfilewriter.py 
new/kapidox-5.71.0/src/kapidox/doxyfilewriter.py
--- old/kapidox-5.70.0/src/kapidox/doxyfilewriter.py    2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/doxyfilewriter.py    2020-06-01 
17:27:12.000000000 +0200
@@ -25,9 +25,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 def _quote(txt):
     return '"' + txt + '"'
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/generator.py 
new/kapidox-5.71.0/src/kapidox/generator.py
--- old/kapidox-5.70.0/src/kapidox/generator.py 2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/src/kapidox/generator.py 2020-06-01 17:27:12.000000000 
+0200
@@ -26,9 +26,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 import codecs
 from distutils.spawn import find_executable
 import datetime
@@ -42,10 +39,7 @@
 
 import jinja2
 
-if sys.version_info.major < 3:
-    from urlparse import urljoin
-else:
-    from urllib.parse import urljoin
+from urllib.parse import urljoin
 
 import xml.etree.ElementTree as xmlET
 import json
@@ -556,7 +550,7 @@
         writer.write_entries(
                 INPUT=input_list,
                 DOTFILE_DIRS=find_src_subdir(ctx.fwinfo.docdir, 'dot'),
-                EXAMPLE_PATH=find_src_subdir(ctx.fwinfo.exampledir),
+                EXAMPLE_PATH=find_src_subdir(ctx.fwinfo.exampledirs),
                 IMAGE_PATH=image_path_list)
 
         # Other input settings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/hlfunctions.py 
new/kapidox-5.71.0/src/kapidox/hlfunctions.py
--- old/kapidox-5.70.0/src/kapidox/hlfunctions.py       2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/hlfunctions.py       2020-06-01 
17:27:12.000000000 +0200
@@ -26,19 +26,14 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 import logging
 import os
 import shutil
 import sys
 import tempfile
+import json
 
-if sys.version_info.major < 3:
-    from urllib import urlretrieve
-else:
-    from urllib.request import urlretrieve
+from urllib.request import urlretrieve
 
 from . import generator, utils, argparserutils, preprocessing
 
@@ -141,6 +136,14 @@
             logging.info('# Merge qch files'
                          .format(lib.fancyname))
             generator.create_qch(products, tagfiles)
+        logging.info("# Writing metadata... ")
+        with open('metadata.json', 'w') as file:
+            json.dump(metalist, file)
+        libs = []
+        for lib in libraries:
+            libs.append({"name": lib.name, "outputdir": lib.outputdir})
+        with open('outputs.json', 'w') as file:
+            json.dump(libs, file)
         logging.info('# Done')
     finally:
         if args.keep_temp_dirs:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/models.py 
new/kapidox-5.71.0/src/kapidox/models.py
--- old/kapidox-5.70.0/src/kapidox/models.py    2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/src/kapidox/models.py    2020-06-01 17:27:12.000000000 
+0200
@@ -107,7 +107,11 @@
         self.path = metainfo['path']
         self.srcdirs = utils.tolist(metainfo.get('public_source_dirs', 
['src']))
         self.docdir = utils.tolist(metainfo.get('public_doc_dir', ['docs']))
-        self.exampledir = utils.tolist(metainfo.get('public_example_dir', 
['examples']))
+        if 'public_example_dirs' in metainfo:
+            self.exampledirs = 
utils.tolist(metainfo.get('public_example_dirs', ['examples']))
+        else:
+            # backward compat
+            self.exampledirs = utils.tolist(metainfo.get('public_example_dir', 
['examples']))
         self.dependency_diagram = None
         self.type = metainfo.get('type', '')
         self.portingAid = metainfo.get('portingAid', False)
@@ -116,6 +120,9 @@
         self.cmakename = metainfo.get('cmakename', '')
         self.irc = metainfo.get('irc', self.product.irc)
         self.mailinglist = metainfo.get('mailinglist', 
self.product.mailinglist)
+        # current assumption is that reponame also used for local clone and 
that it matches the KDE project id
+        # possibly should get an override in the metainfo
+        self.repopath = utils.set_repopath(self.name)
 
     def _extend_parent(self, metainfo, key, key_obj, default):
         if key in metainfo:
@@ -213,16 +220,26 @@
             return None
 
     def _set_logo_src(self, path, dct):
+        defined_not_found = False
         if 'logo' in dct:
             logo_url = os.path.join(path, dct['logo'])
             if os.path.isfile(logo_url):
                 return logo_url
             else:
-                logging.warning("{} logo file doesn't exist, set back to None"
+                defined_not_found = True
+
+        logo_url = os.path.join(path, 'logo.png')
+        if os.path.isfile(logo_url):
+            if defined_not_found:
+                logging.warning("Defined {} logo file doesn't exist, set back 
to found logo.png"
                                 .format(self.fancyname))
-                return None
-        else:
-            return None
+            return logo_url
+
+        if defined_not_found:
+            logging.warning("Defined {} logo file doesn't exist, set back to 
None"
+                            .format(self.fancyname))
+
+        return None
 
 class Subproduct(object):
     """ Subproduct
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/preprocessing.py 
new/kapidox-5.71.0/src/kapidox/preprocessing.py
--- old/kapidox-5.70.0/src/kapidox/preprocessing.py     2020-05-01 
17:03:46.000000000 +0200
+++ new/kapidox-5.71.0/src/kapidox/preprocessing.py     2020-06-01 
17:27:12.000000000 +0200
@@ -26,19 +26,12 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import (division, absolute_import, print_function,
-                        unicode_literals)
-
 import logging
 import os
 import sys
 
-try:
-    from urllib2 import Request, urlopen, HTTPError
-except:
-    from urllib.request import Request, urlopen
-    from urllib.error import HTTPError
+from urllib.request import Request, urlopen
+from urllib.error import HTTPError
 
 import yaml
 
@@ -108,7 +101,7 @@
         return None
 
     try:
-        metainfo = yaml.load(open(metainfo_file))
+        metainfo = yaml.safe_load(open(metainfo_file))
     except Exception as e:
         print(e)
         logging.warning('Could not load metainfo.yaml for {}, skipping it'
@@ -162,12 +155,6 @@
     for path, dirs, _ in os.walk(rootdir):
         # We don't want to do the recursion in the dotdirs
         dirs[:] = [d for d in dirs if not d[0] == '.']
-        if sys.version_info.major < 3:
-            # hardcoding UTF-8 here as sys.getfilesystemencoding() seems not 
reliable
-            # e.g. with api.kde.org's server this is 'ANSI_X3.4-1968', despite 
all locale vars having *.UTF-8
-            # And chance is low someone using kapixdox is using another 
filesystem encoding,
-            # they should just use Python3 anyway now so no run into this code 
branch :)
-            path = path.decode('utf-8')
         metainfo = create_metainfo(path)
         if metainfo is not None:
             if metainfo['public_lib'] or 'group_info' in metainfo:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox/utils.py 
new/kapidox-5.71.0/src/kapidox/utils.py
--- old/kapidox-5.70.0/src/kapidox/utils.py     2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/src/kapidox/utils.py     2020-06-01 17:27:12.000000000 
+0200
@@ -23,10 +23,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
-
 from fnmatch import fnmatch
 import logging
 import os
@@ -35,6 +31,7 @@
 import shutil
 import sys
 import tempfile
+import requests
 
 ## @package kapidox.utils
 #
@@ -68,6 +65,23 @@
     else:
         return None
 
+def set_repopath(id):
+    """ Return the repopath for the repo id, queried from projects.kde.org
+
+    Args:
+        id: unique KDE repo identifier
+    """
+    if id is None:
+        return None
+
+    try:
+        r = requests.get('https://projects.kde.org/api/v1/identifier/' + id)
+        return r.json()['repo']
+    except Exception as exc:
+        # Catch all exceptions here: whatever fails in this function should not
+        # cause the code to fail
+        logging.warning("Failed to get repository url for '{}' from 
projects.kde.org: {}".format(id, exc))
+        return None
 
 def set_maintainers(maintainer_keys, all_maintainers):
     """ Expend the name of the maintainers.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.70.0/src/kapidox_generate 
new/kapidox-5.71.0/src/kapidox_generate
--- old/kapidox-5.70.0/src/kapidox_generate     2020-05-01 17:03:46.000000000 
+0200
+++ new/kapidox-5.71.0/src/kapidox_generate     2020-06-01 17:27:12.000000000 
+0200
@@ -1,4 +1,4 @@
-#! /usr/bin/env python
+#! /usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 # Copyright 2014  Alex Merry <[email protected]>
@@ -27,9 +27,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# Python 2/3 compatibility (NB: we require at least 2.7)
-from __future__ import division, absolute_import, print_function, 
unicode_literals
-
 import logging
 import codecs
 import os
@@ -37,10 +34,7 @@
 import time
 import datetime
 
-if sys.version_info.major < 3:
-    from urllib import urlretrieve
-else:
-    from urllib.request import urlretrieve
+from urllib.request import urlretrieve
 
 from kapidox import generator, utils, argparserutils, preprocessing, 
hlfunctions
 


Reply via email to