From 78420ef6da5afbb763cab5bbc2fb7bdfff3baf2f Mon Sep 17 00:00:00 2001
From: Arohan Ajit <arohanajit@Mac-257.lan>
Date: Wed, 22 Jan 2025 08:48:37 -0500
Subject: [PATCH 1/2] update

---
 gui/wxpython/vdigit/wxdisplay.py | 99 ++++++++++++++++++++++++++++----
 1 file changed, 89 insertions(+), 10 deletions(-)

diff --git a/gui/wxpython/vdigit/wxdisplay.py b/gui/wxpython/vdigit/wxdisplay.py
index 6679e5c5814..3b670296ecb 100644
--- a/gui/wxpython/vdigit/wxdisplay.py
+++ b/gui/wxpython/vdigit/wxdisplay.py
@@ -18,23 +18,102 @@
 """
 
 import locale
-
 import os
 import sys
-import wx
+from ctypes import CFUNCTYPE, UNCHECKED, String, byref, c_double, c_int, pointer
 
+import wx
 from core.debug import Debug
-from core.settings import UserSettings
 from core.gcmd import DecodeString
+from core.settings import UserSettings
+from grass.lib.gis import (
+    PORT_DOUBLE_MAX,
+    G_gisinit,
+    G_set_error_routine,
+    G_set_percent_routine,
+    G_unset_error_routine,
+    G_unset_percent_routine,
+)
+from grass.lib.vector import (
+    GV_BOUNDARY,
+    GV_BUILD_NONE,
+    GV_CENTROID,
+    GV_LINE,
+    GV_LINES,
+    GV_MODE_RW,
+    GV_POINT,
+    GV_POINTS,
+    WITHOUT_Z,
+    Map_info,
+    Vect_append_point,
+    Vect_box_copy,
+    Vect_box_extend,
+    Vect_build,
+    Vect_build_partial,
+    Vect_close,
+    Vect_destroy_cats_struct,
+    Vect_destroy_line_struct,
+    Vect_destroy_list,
+    Vect_find_line_list,
+    Vect_get_area_box,
+    Vect_get_area_centroid,
+    Vect_get_centroid_area,
+    Vect_get_line_box,
+    Vect_get_map_box,
+    Vect_get_num_areas,
+    Vect_get_num_lines,
+    Vect_is_3d,
+    Vect_line_alive,
+    Vect_line_check_duplicate,
+    Vect_line_distance,
+    Vect_list_append,
+    Vect_new_cats_struct,
+    Vect_new_line_struct,
+    Vect_new_list,
+    Vect_open_old,
+    Vect_open_tmp_old,
+    Vect_open_tmp_update,
+    Vect_open_update,
+    Vect_point_in_area,
+    Vect_point_in_poly,
+    Vect_points_distance,
+    Vect_read_line,
+    Vect_select_lines_by_polygon,
+    Vect_set_updated,
+    bound_box,
+)
+from grass.lib.vedit import (
+    DRAW_AREA,
+    DRAW_BOUNDARYNO,
+    DRAW_BOUNDARYONE,
+    DRAW_BOUNDARYTWO,
+    DRAW_CENTROIDDUP,
+    DRAW_CENTROIDIN,
+    DRAW_CENTROIDOUT,
+    DRAW_DIRECTION,
+    DRAW_LINE,
+    DRAW_NODEONE,
+    DRAW_NODETWO,
+    DRAW_POINT,
+    DRAW_VERTEX,
+    TYPE_AREA,
+    TYPE_BOUNDARYNO,
+    TYPE_BOUNDARYONE,
+    TYPE_BOUNDARYTWO,
+    TYPE_CENTROIDDUP,
+    TYPE_CENTROIDIN,
+    TYPE_CENTROIDOUT,
+    TYPE_DIRECTION,
+    TYPE_ISLE,
+    TYPE_LINE,
+    TYPE_NODEONE,
+    TYPE_NODETWO,
+    TYPE_POINT,
+    TYPE_VERTEX,
+    Vedit_render_map,
+)
 from gui_core.wrap import Rect
 
-try:
-    from grass.lib.gis import *
-    from grass.lib.vector import *
-    from grass.lib.vedit import *
-except (ImportError, OSError, TypeError) as e:
-    print("wxdigit.py: {}".format(e), file=sys.stderr)
-
 log = None
 progress = None
 last_error = ""

From 4518eb721dfcce4f89577260813916b23f75d311 Mon Sep 17 00:00:00 2001
From: Arohan Ajit <arohanajit@Mac-266.lan>
Date: Thu, 23 Jan 2025 11:55:16 -0500
Subject: [PATCH 2/2] update

---
 .flake8                     | 1 -
 gui/wxpython/mapwin/base.py | 6 +++---
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/.flake8 b/.flake8
index 99c6e425717..cfde16361c7 100644
--- a/.flake8
+++ b/.flake8
@@ -32,7 +32,6 @@ per-file-ignores =
     gui/wxpython/mapdisp/main.py: E722
     gui/wxpython/mapdisp/test_mapdisp.py: E501
     gui/wxpython/mapswipe/g.gui.mapswipe.py: E501
-    gui/wxpython/mapwin/base.py: E722
     gui/wxpython/mapwin/buffered.py: E722
     gui/wxpython/timeline/g.gui.timeline.py: E501
     # Generated file
diff --git a/gui/wxpython/mapwin/base.py b/gui/wxpython/mapwin/base.py
index 3a53599cb38..d141fe44382 100644
--- a/gui/wxpython/mapwin/base.py
+++ b/gui/wxpython/mapwin/base.py
@@ -220,7 +220,7 @@ def HandlersCaller(self, event, handlers):
         for handler in handlers:
             try:
                 handler(event)
-            except:
+            except Exception:
                 handlers.remove(handler)
                 GError(
                     parent=self,
@@ -308,7 +308,7 @@ def UnregisterAllHandlers(self):
                 try:
                     handler("unregistered")
                     handlers.remove(handler)
-                except:
+                except Exception:
                     GError(
                         parent=self,
                         message=_(
@@ -347,7 +347,7 @@ def UnregisterMouseEventHandler(self, event, handler):
                     grass.warning(
                         _("Handler: %s was not registered") % handler.__name__
                     )
-            except:
+            except Exception:
                 GError(
                     parent=self,
                     message=_(