All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] support/scripts/cve: replace distutils with looseversion
@ 2025-09-11 12:12 Anton Bengtsson via buildroot
  2025-09-11 19:13 ` Arnout Vandecappelle via buildroot
  2025-09-12  8:34 ` [Buildroot] [PATCH v2 1/2] " Anton Bengtsson via buildroot
  0 siblings, 2 replies; 7+ messages in thread
From: Anton Bengtsson via buildroot @ 2025-09-11 12:12 UTC (permalink / raw)
  To: buildroot; +Cc: Anton Bengtsson

The package 'distutils' was removed in Python 3.12 (https://docs.python.org/3/library/distutils.html)
and looseversion appears to be a good drop-in replacement for distutils.version.LooseVersion,
see https://pypi.org/project/looseversion/.

Signed-off-by: Anton Bengtsson <anton.bengtsson@plejd.com>
---
 support/scripts/cve.py | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/support/scripts/cve.py b/support/scripts/cve.py
index ba41762fa0..63372c3273 100755
--- a/support/scripts/cve.py
+++ b/support/scripts/cve.py
@@ -19,11 +19,11 @@
 
 import datetime
 import os
-import distutils.version
 import json
 import subprocess
 import sys
 import operator
+from looseversion import LooseVersion
 
 sys.path.append('utils/')
 
@@ -190,7 +190,7 @@ class CVE:
         by this CVE.
         """
 
-        pkg_version = distutils.version.LooseVersion(version)
+        pkg_version = LooseVersion(version)
         if not hasattr(pkg_version, "version"):
             print("Cannot parse package '%s' version '%s'" % (name, version))
             pkg_version = None
@@ -202,7 +202,7 @@ class CVE:
         # version, as they might be different due to
         # <pkg>_CPE_ID_VERSION
         else:
-            pkg_version = distutils.version.LooseVersion(cpe_version(cpeid))
+            pkg_version = LooseVersion(cpe_version(cpeid))
 
         for cpe in self.each_cpe():
             if not cpe_matches(cpe['id'], cpeid):
@@ -214,7 +214,7 @@ class CVE:
 
             if cpe['v_start']:
                 try:
-                    cve_affected_version = distutils.version.LooseVersion(cpe['v_start'])
+                    cve_affected_version = LooseVersion(cpe['v_start'])
                     inrange = ops.get(cpe['op_start'])(pkg_version, cve_affected_version)
                 except TypeError:
                     return self.CVE_UNKNOWN
@@ -226,7 +226,7 @@ class CVE:
 
             if cpe['v_end']:
                 try:
-                    cve_affected_version = distutils.version.LooseVersion(cpe['v_end'])
+                    cve_affected_version = LooseVersion(cpe['v_end'])
                     inrange = ops.get(cpe['op_end'])(pkg_version, cve_affected_version)
                 except TypeError:
                     return self.CVE_UNKNOWN
-- 
2.51.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-02-04 15:29 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-11 12:12 [Buildroot] [PATCH 1/1] support/scripts/cve: replace distutils with looseversion Anton Bengtsson via buildroot
2025-09-11 19:13 ` Arnout Vandecappelle via buildroot
2025-09-12  8:34 ` [Buildroot] [PATCH v2 1/2] " Anton Bengtsson via buildroot
2025-09-12  8:34   ` [Buildroot] [PATCH v2 2/2] support/docker/Dockerfile: add python3-looseversion Anton Bengtsson via buildroot
2026-01-06 22:15   ` [Buildroot] [PATCH v2 1/2] support/scripts/cve: replace distutils with looseversion Thomas Perale via buildroot
2026-02-04 14:57     ` Thomas Petazzoni via buildroot
2026-02-04 15:29     ` Vincent Fazio

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.