All of lore.kernel.org
 help / color / mirror / Atom feed
* [honister][PATCH 1/4] lib/pyinotify.py: Remove deprecated module asyncore
@ 2021-12-10 11:08 Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 2/4] packagedata.py: silence a DeprecationWarning Ross Burton
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Ross Burton @ 2021-12-10 11:08 UTC (permalink / raw)
  To: openembedded-core

From: Robert Yang <liezhi.yang@windriver.com>

When build with nativesdk-python3 (3.10) from buildtools:
/path/to/bitbake/lib/pyinotify.py:55: DeprecationWarning: The asyncore module is deprecated. The recommended replacement is asyncio

The pyinotify.py's upstream didn't have any update in recent 7 years:
https://github.com/seb-m/pyinotify

And bitbake doesn't use the asyncore module, so remove the related code.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 bitbake/lib/pyinotify.py | 30 ------------------------------
 1 file changed, 30 deletions(-)

diff --git a/bitbake/lib/pyinotify.py b/bitbake/lib/pyinotify.py
index 6ae40a2d765..8c94b3e3348 100644
--- a/bitbake/lib/pyinotify.py
+++ b/bitbake/lib/pyinotify.py
@@ -52,7 +52,6 @@ from collections import deque
 from datetime import datetime, timedelta
 import time
 import re
-import asyncore
 import glob
 import locale
 import subprocess
@@ -1475,35 +1474,6 @@ class ThreadedNotifier(threading.Thread, Notifier):
         self.loop()
 
 
-class AsyncNotifier(asyncore.file_dispatcher, Notifier):
-    """
-    This notifier inherits from asyncore.file_dispatcher in order to be able to
-    use pyinotify along with the asyncore framework.
-
-    """
-    def __init__(self, watch_manager, default_proc_fun=None, read_freq=0,
-                 threshold=0, timeout=None, channel_map=None):
-        """
-        Initializes the async notifier. The only additional parameter is
-        'channel_map' which is the optional asyncore private map. See
-        Notifier class for the meaning of the others parameters.
-
-        """
-        Notifier.__init__(self, watch_manager, default_proc_fun, read_freq,
-                          threshold, timeout)
-        asyncore.file_dispatcher.__init__(self, self._fd, channel_map)
-
-    def handle_read(self):
-        """
-        When asyncore tells us we can read from the fd, we proceed processing
-        events. This method can be overridden for handling a notification
-        differently.
-
-        """
-        self.read_events()
-        self.process_events()
-
-
 class TornadoAsyncNotifier(Notifier):
     """
     Tornado ioloop adapter.
-- 
2.25.1



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

* [honister][PATCH 2/4] packagedata.py: silence a DeprecationWarning
  2021-12-10 11:08 [honister][PATCH 1/4] lib/pyinotify.py: Remove deprecated module asyncore Ross Burton
@ 2021-12-10 11:08 ` Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 3/4] oe/license: implement ast.NodeVisitor.visit_Constant Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 4/4] license.bbclass: " Ross Burton
  2 siblings, 0 replies; 4+ messages in thread
From: Ross Burton @ 2021-12-10 11:08 UTC (permalink / raw)
  To: openembedded-core

From: Mingli Yu <mingli.yu@windriver.com>

Use regex strings (r’’) to silence below deprecation warning [1]:
 $ cat tmp/work/intel_x86_64-wrs-linux/linux-yocto/5.10.x+gitAUTOINC+917c420111_373c02c3ca-r0/temp/log.do_deploy
 [snip]
 /build/layers/oe-core/meta/lib/oe/packagedata.py:22: DeprecationWarning: invalid escape sequence \s
 r = re.compile("(^.+?):\s+(.*)")
 [snip]

[1] https://docs.python.org/3/library/re.html

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
 meta/lib/oe/packagedata.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oe/packagedata.py b/meta/lib/oe/packagedata.py
index 02c81e5a522..212f048bc60 100644
--- a/meta/lib/oe/packagedata.py
+++ b/meta/lib/oe/packagedata.py
@@ -19,7 +19,7 @@ def read_pkgdatafile(fn):
         import re
         with open(fn, 'r') as f:
             lines = f.readlines()
-        r = re.compile("(^.+?):\s+(.*)")
+        r = re.compile(r"(^.+?):\s+(.*)")
         for l in lines:
             m = r.match(l)
             if m:
-- 
2.25.1



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

* [honister][PATCH 3/4] oe/license: implement ast.NodeVisitor.visit_Constant
  2021-12-10 11:08 [honister][PATCH 1/4] lib/pyinotify.py: Remove deprecated module asyncore Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 2/4] packagedata.py: silence a DeprecationWarning Ross Burton
@ 2021-12-10 11:08 ` Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 4/4] license.bbclass: " Ross Burton
  2 siblings, 0 replies; 4+ messages in thread
From: Ross Burton @ 2021-12-10 11:08 UTC (permalink / raw)
  To: openembedded-core

From: Ross Burton <ross@burtonini.com>

Since Python 3.8 visit_Num(), visit_Str() and so on are all deprecated
and replaced with visit_Constant.  We can't yet remove the deprecated
functions until we require 3.8, but we can implement visit_Constant to
silence the deprecation warnings.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 meta/lib/oe/license.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/meta/lib/oe/license.py b/meta/lib/oe/license.py
index 665d32ecbb1..b5d378a549b 100644
--- a/meta/lib/oe/license.py
+++ b/meta/lib/oe/license.py
@@ -74,6 +74,9 @@ class FlattenVisitor(LicenseVisitor):
     def visit_Str(self, node):
         self.licenses.append(node.s)
 
+    def visit_Constant(self, node):
+        self.licenses.append(node.value)
+
     def visit_BinOp(self, node):
         if isinstance(node.op, ast.BitOr):
             left = FlattenVisitor(self.choose_licenses)
@@ -227,6 +230,9 @@ class ListVisitor(LicenseVisitor):
     def visit_Str(self, node):
         self.licenses.add(node.s)
 
+    def visit_Constant(self, node):
+        self.licenses.add(node.value)
+
 def list_licenses(licensestr):
     """Simply get a list of all licenses mentioned in a license string.
        Binary operators are not applied or taken into account in any way"""
-- 
2.25.1



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

* [honister][PATCH 4/4] license.bbclass: implement ast.NodeVisitor.visit_Constant
  2021-12-10 11:08 [honister][PATCH 1/4] lib/pyinotify.py: Remove deprecated module asyncore Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 2/4] packagedata.py: silence a DeprecationWarning Ross Burton
  2021-12-10 11:08 ` [honister][PATCH 3/4] oe/license: implement ast.NodeVisitor.visit_Constant Ross Burton
@ 2021-12-10 11:08 ` Ross Burton
  2 siblings, 0 replies; 4+ messages in thread
From: Ross Burton @ 2021-12-10 11:08 UTC (permalink / raw)
  To: openembedded-core

From: Ross Burton <ross@burtonini.com>

Since Python 3.8 visit_Num(), visit_Str() and so on are all deprecated
and replaced with visit_Constant.  We can't yet remove the deprecated
functions until we require 3.8, but we can implement visit_Constant to
silence the deprecation warnings.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 meta/classes/license.bbclass | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass
index 45d912741d2..7a34e185c74 100644
--- a/meta/classes/license.bbclass
+++ b/meta/classes/license.bbclass
@@ -145,6 +145,10 @@ def find_license_files(d):
             find_license(node.s.replace("+", "").replace("*", ""))
             self.generic_visit(node)
 
+        def visit_Constant(self, node):
+            find_license(node.value.replace("+", "").replace("*", ""))
+            self.generic_visit(node)
+
     def find_license(license_type):
         try:
             bb.utils.mkdirhier(gen_lic_dest)
-- 
2.25.1



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

end of thread, other threads:[~2021-12-10 11:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-10 11:08 [honister][PATCH 1/4] lib/pyinotify.py: Remove deprecated module asyncore Ross Burton
2021-12-10 11:08 ` [honister][PATCH 2/4] packagedata.py: silence a DeprecationWarning Ross Burton
2021-12-10 11:08 ` [honister][PATCH 3/4] oe/license: implement ast.NodeVisitor.visit_Constant Ross Burton
2021-12-10 11:08 ` [honister][PATCH 4/4] license.bbclass: " Ross Burton

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.