Selaa lähdekoodia

Merge pull request #1717 from pbiering/extend-module-info-list

Extend module info list
Peter Bieringer 11 kuukautta sitten
vanhempi
sitoutus
36a0501484
3 muutettua tiedostoa jossa 17 lisäystä ja 4 poistoa
  1. 1 0
      CHANGELOG.md
  2. 1 1
      radicale/auth/pam.py
  3. 15 3
      radicale/utils.py

+ 1 - 0
CHANGELOG.md

@@ -7,6 +7,7 @@
 * Test: skip bcrypt related tests if module is missing
 * Improve: relax mtime check on storage filesystem, change test file location to "collection-root" directory
 * Add: option [auth] type pam by code migration from v1, add new option pam_serivce
+* Cosmetics: extend list of used modules with their version on startup
 
 ## 3.4.1
 * Add: option [auth] dovecot_connection_type / dovecot_host / dovecot_port

+ 1 - 1
radicale/auth/pam.py

@@ -49,7 +49,7 @@ class Auth(auth.BaseAuth):
         if (self._group_membership):
             logger.info("auth.pam_group_membership: %s" % self._group_membership)
         else:
-            logger.info("auth.pam_group_membership: (empty, nothing to check / INSECURE)")
+            logger.warning("auth.pam_group_membership: (empty, nothing to check / INSECURE)")
 
     def pam_authenticate(self, *args, **kwargs):
         return self.pam.authenticate(*args, **kwargs)

+ 15 - 3
radicale/utils.py

@@ -2,7 +2,7 @@
 # Copyright © 2014 Jean-Marc Martins
 # Copyright © 2012-2017 Guillaume Ayoub
 # Copyright © 2017-2018 Unrud <unrud@outlook.com>
-# Copyright © 2024-2024 Peter Bieringer <pb@bieringer.de>
+# Copyright © 2024-2025 Peter Bieringer <pb@bieringer.de>
 #
 # This library is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -27,7 +27,13 @@ from radicale.log import logger
 
 _T_co = TypeVar("_T_co", covariant=True)
 
-RADICALE_MODULES: Sequence[str] = ("radicale", "vobject", "passlib", "defusedxml")
+RADICALE_MODULES: Sequence[str] = ("radicale", "vobject", "passlib", "defusedxml",
+                                   "dateutil",
+                                   "bcrypt",
+                                   "pika",
+                                   "ldap",
+                                   "ldap3",
+                                   "pam")
 
 
 def load_plugin(internal_types: Sequence[str], module_name: str,
@@ -58,7 +64,13 @@ def packages_version():
     versions = []
     versions.append("python=%s.%s.%s" % (sys.version_info[0], sys.version_info[1], sys.version_info[2]))
     for pkg in RADICALE_MODULES:
-        versions.append("%s=%s" % (pkg, package_version(pkg)))
+        try:
+            versions.append("%s=%s" % (pkg, package_version(pkg)))
+        except Exception:
+            try:
+                versions.append("%s=%s" % (pkg, package_version("python-" + pkg)))
+            except Exception:
+                versions.append("%s=%s" % (pkg, "n/a"))
     return " ".join(versions)