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>®</sup> and <a href="/media/images/kde_gear_black.png">the K Desktop Environment<sup>®</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>®</sup> and <a href="/media/images/kde_gear_black.png">the K Desktop Environment<sup>®</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 © {{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>, © 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
