Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kapidox for openSUSE:Factory checked 
in at 2021-08-16 10:11:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kapidox (Old)
 and      /work/SRC/openSUSE:Factory/.kapidox.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kapidox"

Mon Aug 16 10:11:43 2021 rev:92 rq:912109 version:5.85.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kapidox/kapidox.changes  2021-07-16 
00:02:18.480723198 +0200
+++ /work/SRC/openSUSE:Factory/.kapidox.new.1899/kapidox.changes        
2021-08-16 10:17:53.386632377 +0200
@@ -1,0 +2,9 @@
+Fri Aug  6 12:11:23 UTC 2021 - Christophe Giboudeaux <[email protected]>
+
+- Update to 5.85.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/5/5.85.0
+- Too many changes to list here.
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ kapidox.spec ++++++
--- /var/tmp/diff_new_pack.DHGMF8/_old  2021-08-16 10:17:53.822631677 +0200
+++ /var/tmp/diff_new_pack.DHGMF8/_new  2021-08-16 10:17:53.826631671 +0200
@@ -18,13 +18,13 @@
 
 # Only needed for the package signature condition
 %bcond_without lang
-%define _tar_path 5.84
+%define _tar_path 5.85
 # 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.84.0
+Version:        5.85.0
 Release:        0
 Summary:        Scripts and data for building API documentation
 License:        BSD-2-Clause


++++++ kapidox-5.84.0.tar.xz -> kapidox-5.85.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/CMakeLists.txt 
new/kapidox-5.85.0/CMakeLists.txt
--- old/kapidox-5.84.0/CMakeLists.txt   2021-06-16 00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/CMakeLists.txt   2021-07-22 14:09:44.000000000 +0200
@@ -1,7 +1,7 @@
 cmake_minimum_required(VERSION 3.16)
 project(KApiDox NONE)
 
-find_package(PythonInterp REQUIRED)
+find_package(Python3 COMPONENTS Interpreter)
 
 if(WIN32)
     # Needs native path and extra escaping of spaces
@@ -11,7 +11,7 @@
 endif()
 
 add_custom_target(build ALL
-    COMMAND ${PYTHON_EXECUTABLE} setup.py build --build-base ${BINARY_DIR}
+    COMMAND ${Python3_EXECUTABLE} setup.py build --build-base ${BINARY_DIR}
     WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
     )
 
@@ -30,7 +30,7 @@
      endif()
     file(TO_NATIVE_PATH ${CMAKE_INSTALL_PREFIX} INSTALL_PREFIX)
      execute_process(
-        COMMAND ${PYTHON_EXECUTABLE} setup.py install --prefix 
\"\${INSTALL_PREFIX}\" \${_root_arg}
+        COMMAND ${Python3_EXECUTABLE} setup.py install --prefix 
\"\${INSTALL_PREFIX}\" \${_root_arg}
         WORKING_DIRECTORY \"${CMAKE_SOURCE_DIR}\"
         )"
     )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/README.md new/kapidox-5.85.0/README.md
--- old/kapidox-5.84.0/README.md        2021-06-16 00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/README.md        2021-07-22 14:09:44.000000000 +0200
@@ -25,8 +25,8 @@
 Of course, you need Doxygen!
 
 ### Optional
-Doxyqml and doxypypy might be needed to let doxygen document respectevely qml
-and python sources.
+Doxyqml and doxypypy might be needed to let doxygen document qml
+and python sources respectively.
 
 To generate the dependency diagrams, you need the Graphviz Python bindings.
 They are currently not available from pip, but most distributions provide them.
@@ -66,8 +66,8 @@
 
 ### metainfo.yaml
 A `metainfo.yaml` file is needed for the library to be generated. It should
-contain some metainformations about the library itself, its maintainers, where
-the sources are etc..
+contain some meta information about the library itself, its maintainers, where
+the sources are, etc.
 
 A very simple example can be:
 
@@ -101,11 +101,11 @@
 
     ~/src/frameworks/kapidox/src/kapidox_generate ~/src/frameworks/kcoreaddons
 
-and it would create a documentation in the current directory.
+and it would create a documentation in the current directory, which needs to 
be empty before executing the command.
 
 The folders are recursively walked through, so you can also run it on
 `~/src/frameworks` or `~/src`. For a lot of libraries, the generation can last
-15-30 minutes and be several hundreds of Mb, so be prepared!
+15-30 minutes and be several hundreds of MB, so be prepared!
 
 Pass the --help argument to see options that control the behaviour of the
 script.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/docs/metainfo_syntax.md 
new/kapidox-5.85.0/docs/metainfo_syntax.md
--- old/kapidox-5.84.0/docs/metainfo_syntax.md  2021-06-16 00:06:47.000000000 
+0200
+++ new/kapidox-5.85.0/docs/metainfo_syntax.md  2021-07-22 14:09:44.000000000 
+0200
@@ -6,7 +6,7 @@
 more are defined, the behavior is unknown.
 
 **Be sure to to set `public_lib` to true, or the library will be ignored.** 
Most of
-the other keys are optionals. See below for a simplier example.
+the other keys are optionals. See below for a simpler example.
 
 ## All possible keys.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/requirements.txt 
new/kapidox-5.85.0/requirements.txt
--- old/kapidox-5.84.0/requirements.txt 2021-06-16 00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/requirements.txt 2021-07-22 14:09:44.000000000 +0200
@@ -1,2 +1,5 @@
 doxypypy
 doxyqml
+requests
+jinja2
+pyyaml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/setup.py new/kapidox-5.85.0/setup.py
--- old/kapidox-5.84.0/setup.py 2021-06-16 00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/setup.py 2021-07-22 14:09:44.000000000 +0200
@@ -14,7 +14,7 @@
 
 setup(
         name='kapidox',
-        version='5.84.0',
+        version='5.85.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.84.0/src/kapidox/argparserutils.py 
new/kapidox-5.85.0/src/kapidox/argparserutils.py
--- old/kapidox-5.84.0/src/kapidox/argparserutils.py    2021-06-16 
00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/src/kapidox/argparserutils.py    2021-07-22 
14:09:44.000000000 +0200
@@ -17,9 +17,9 @@
     import textwrap
     parser = argparse.ArgumentParser(
         formatter_class=argparse.RawDescriptionHelpFormatter,
-        description=textwrap.dedent('''Generate API documentations of complex 
projects.
+        description=textwrap.dedent('''Generate API documentation of complex 
projects.
 
->> This function must be run from an empty directory (where the documentation 
will be build).''')
+>> This function must be run from an empty directory (where the documentation 
will be built).''')
         )
     group = add_sources_group(parser)
     group.add_argument('sourcesdir', type=normalized_path,
@@ -48,8 +48,10 @@
 
 
 def add_sources_group(parser):
-    return parser.add_argument_group('sources')
-
+    group = parser.add_argument_group('sources')
+    group.add_argument('--accountsfile', type=normalized_path,
+            help='File with accounts information of SVN contributors.')
+    return group
 
 def add_output_group(parser):
     group = parser.add_argument_group('output options')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/src/kapidox/data/Doxyfile.global 
new/kapidox-5.85.0/src/kapidox/data/Doxyfile.global
--- old/kapidox-5.84.0/src/kapidox/data/Doxyfile.global 2021-06-16 
00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/src/kapidox/data/Doxyfile.global 2021-07-22 
14:09:44.000000000 +0200
@@ -12,7 +12,7 @@
 # to NO the shortest path that makes the file name unique will be used.
 FULL_PATH_NAMES        = NO
 
-# Do not require explicity @brief command for brief description
+# Do not require explicitly @brief command for brief description
 JAVADOC_AUTOBRIEF      = YES
 
 # A bunch of useful aliases
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/src/kapidox/generator.py 
new/kapidox-5.85.0/src/kapidox/generator.py
--- old/kapidox-5.84.0/src/kapidox/generator.py 2021-06-16 00:06:47.000000000 
+0200
+++ new/kapidox-5.85.0/src/kapidox/generator.py 2021-07-22 14:09:44.000000000 
+0200
@@ -686,7 +686,7 @@
     if lib.part_of_group:
         corrected_tagfiles = []
         for k in range(len(tagfiles)):
-            # tagfiles are tupples like:
+            # tagfiles are tuples like:
             # ('/usr/share/doc/qt/KF5Completion.tags', '/usr/share/doc/qt')
             # ('/where/the/tagfile/is/Name.tags', '/where/the/root/folder/is')
             if tagfiles[k][1].startswith("http://";) or 
tagfiles[k][1].startswith("https://";):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/src/kapidox/preprocessing.py 
new/kapidox-5.85.0/src/kapidox/preprocessing.py
--- old/kapidox-5.84.0/src/kapidox/preprocessing.py     2021-06-16 
00:06:47.000000000 +0200
+++ new/kapidox-5.85.0/src/kapidox/preprocessing.py     2021-07-22 
14:09:44.000000000 +0200
@@ -102,7 +102,11 @@
                         .format(path))
         return None
 
-    dirname = os.path.basename(path)
+    # Suppose we get a relative path passed in (e.g. on the command-line,
+    # path .. because we're building the dox in a subdirectory of a source
+    # checkout) then we don't want dirname to be "..", but the name that
+    # that resolves to.
+    dirname = os.path.basename(os.path.abspath(path))
     if 'fancyname' in metainfo:
         fancyname = metainfo['fancyname']
     else:
@@ -171,11 +175,20 @@
 
     """
     metalist = []
-    for path, dirs, _ in os.walk(rootdir):
+    for path, dirs, _ in os.walk(rootdir, topdown=True):
         # We don't want to do the recursion in the dotdirs
         dirs[:] = [d for d in dirs if not d[0] == '.']
         metainfo = create_metainfo(path)
         if metainfo is not None:
+            # There was a metainfo.yaml, which means it was
+            # the top of a checked-out repository. Stop processing,
+            # because we do not support having repo B checked out (even
+            # as a submodule) inside repo A.
+            #
+            # There are exceptions: messagelib (KDE PIM) contains
+            # multiple subdirectories with their own metainfo.yaml,
+            # which are listed as public sources.
+            dirs[:] = [d for d in dirs if d in 
metainfo.get('public_source_dirs', [])]
             if metainfo['public_lib'] or 'group_info' in metainfo:
                 metalist.append(metainfo)
             else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/src/kapidox/utils.py 
new/kapidox-5.85.0/src/kapidox/utils.py
--- old/kapidox-5.84.0/src/kapidox/utils.py     2021-06-16 00:06:47.000000000 
+0200
+++ new/kapidox-5.85.0/src/kapidox/utils.py     2021-07-22 14:09:44.000000000 
+0200
@@ -62,6 +62,11 @@
         # 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))
+        # This means there is no canonical repo identifier for this repo:
+        # generally that means that the repo was checked out into a non-
+        # canonical pathname (e.g. kitemviews checkout out into a directory
+        # called KItemViews, or kitemviews.git .. anything other than
+        # kitemviews is not recognized).
         return None
 
 def set_maintainers(maintainer_keys, all_maintainers):
@@ -109,12 +114,13 @@
                 return f[:-4]
         logging.error("No CMakeLists.txt in {}".format(fw_dir))
         return None
-    project_re = re.compile(r"project\s*\(\s*([\w\-\_]+)", re.I)
+    project_re = re.compile(r"^\s*project\s*\(\s*([\w\-\_]+)", re.I | re.M)
     with open(cmakelists_path) as f:
-        for line in f.readlines():
-            match = project_re.search(line)
-            if match:
-                return match.group(1)
+        cmakelists_content = f.read()
+        match = project_re.search(cmakelists_content)
+        if match:
+            return match.group(1)
+
     logging.error("Failed to find framework name: Could not find a "
                   "'project()' command in {}.".format(cmakelists_path))
     return None
@@ -157,7 +163,7 @@
 
     Args:
         remote:     (string) the remote url.
-        local:      (string) the local path where to dowload.
+        local:      (string) the local path where to download.
         overwrite:  (bool) whether to overwrite `local` or not. (optional,
     default = False)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kapidox-5.84.0/src/kapidox_generate 
new/kapidox-5.85.0/src/kapidox_generate
--- old/kapidox-5.84.0/src/kapidox_generate     2021-06-16 00:06:47.000000000 
+0200
+++ new/kapidox-5.85.0/src/kapidox_generate     2021-07-22 14:09:44.000000000 
+0200
@@ -15,8 +15,6 @@
 import time
 import datetime
 
-from urllib.request import urlretrieve
-
 from kapidox import generator, utils, argparserutils, preprocessing, 
hlfunctions
 
 try:
@@ -26,56 +24,46 @@
     DEPDIAGRAM_AVAILABLE = False
 
 
-def download_kde_identities():
-    """Download the "accounts" file on the KDE SVN repository in order to get
-       the KDE identities with their name and e-mail address
-    """
-    cache_file = os.path.join(utils.cache_dir(), 'kde-accounts')
-    needs_download = True
-    if os.path.exists(cache_file):
-        logging.debug("Found cached identities file at %s", cache_file)
-        # not quite a day, so that generation on api.kde.org gets a fresh
-        # copy every time the daily cron job runs it
-        yesterday = time.time() - (23.5 * 3600)
-        if os.path.getmtime(cache_file) > yesterday:
-            needs_download = False
-        else:
-            logging.debug("Cached file too old; updating")
-    if needs_download:
-        logging.info("Downloading KDE identities")
-        try:
-            if not utils.svn_export(
-                    'svn://anonsvn.kde.org/home/kde/trunk/kde-common/accounts',
-                    cache_file,
-                    overwrite=True):
-                logging.debug("Falling back to using websvn to fetch "
-                              "identities file")
-                
urlretrieve('https://websvn.kde.org/*checkout*/trunk/kde-common/accounts',
-                            cache_file)
-        except Exception as e:
-            if os.path.exists(cache_file):
-                logging.error('Failed to update KDE identities: %s', e)
-            else:
-                logging.error('Failed to fetch KDE identities: %s', e)
-                return None
+def get_identities():
+    """Extract account information from the file (if any) specified with
+       the `--accountsfile` command-line argument.
+       An account file is a whitespace-separated file with a first "column"
+       specifying the account name, the last "column" specifying an email
+       address, and all the columns in between are a name, e.g.
+
+       adridg Adriaan de Groot [email protected]
 
+       This line has three "columns" for the name.
+    """
     maintainers = {}
 
-    with codecs.open(cache_file, 'r', encoding='utf8') as f:
-        for line in f:
-            parts = line.strip().split()
-            if len(parts) >= 3:
-                maintainers[parts[0]] = {
-                    'name': ' '.join(parts[1:-1]),
-                    'email': parts[-1]
-                    }
+    args = argparserutils.parse_args(DEPDIAGRAM_AVAILABLE)
+    if args.accountsfile and os.path.exists(args.accountsfile):
+        logging.debug("Found contributor identities file at %s", 
args.accountsfile)
+        with codecs.open(args.accountsfile, 'r', encoding='utf8') as f:
+            for line in f:
+                parts = line.strip().split()
+                if len(parts) >= 3:
+                    maintainers[parts[0]] = {
+                        'name': ' '.join(parts[1:-1]),
+                        'email': parts[-1]
+                        }
+
+    else:
+        logging.debug("No contributor identities file specified. Without the "
+                      "file, maintainer information will be incomplete. For "
+                      "generating KDE API documentation you can download the "
+                      "KDE accounts file from https://websvn.kde.org/*check";
+                      "out*/trunk/kde-common/accounts and specify it with the "
+                      "--accountsfile argument.")
+
 
     return maintainers
 
 
 def main():
     kde_copyright = '1996-' + str(datetime.date.today().year) + ' The KDE 
developers'
-    get_maintainers = download_kde_identities
+    get_maintainers = get_identities
 
     hlfunctions.do_it(maintainers_fct=get_maintainers,
                       copyright=kde_copyright)

Reply via email to