From aa53ba53f8af072d7e66808b891f8b6cdbb890b2 Mon Sep 17 00:00:00 2001
From: Nils Brueggemann <nils.brueggemann@mpimet.mpg.de>
Date: Tue, 18 Mar 2025 22:10:40 +0100
Subject: [PATCH] Only import ipdb if it is present.

---
 pyicon/pyicon_plotting.py | 4 +++-
 pyicon/pyicon_tb.py       | 4 +++-
 scripts/pyic_fig.py       | 4 +++-
 scripts/pyic_intake.py    | 4 +++-
 scripts/pyic_sec.py       | 3 +++
 scripts/pyic_view.py      | 4 +++-
 6 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/pyicon/pyicon_plotting.py b/pyicon/pyicon_plotting.py
index 0dd734d..ec1a84e 100644
--- a/pyicon/pyicon_plotting.py
+++ b/pyicon/pyicon_plotting.py
@@ -15,7 +15,9 @@ import cartopy
 import cartopy.crs as ccrs
 from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter
 import cmocean
-from ipdb import set_trace as mybreak
+import importlib.util
+if importlib.util.find_spec("ipdb"):
+  from ipdb import set_trace as mybreak
 #from importlib import reload
 from .pyicon_tb import write_dataarray_to_nc
 from .pyicon_tb import identify_grid
diff --git a/pyicon/pyicon_tb.py b/pyicon/pyicon_tb.py
index d58ded2..9b83c69 100644
--- a/pyicon/pyicon_tb.py
+++ b/pyicon/pyicon_tb.py
@@ -18,7 +18,9 @@ import matplotlib.pyplot as plt
 import matplotlib
 # --- debugging
 #print('mybreak')
-from ipdb import set_trace as mybreak  
+import importlib.util
+if importlib.util.find_spec("ipdb"):
+  from ipdb import set_trace as mybreak
 #print('pnadas')
 import pandas as pd
 #print('xarray')
diff --git a/scripts/pyic_fig.py b/scripts/pyic_fig.py
index 5ad9e7d..04d5837 100755
--- a/scripts/pyic_fig.py
+++ b/scripts/pyic_fig.py
@@ -166,7 +166,9 @@ def main():
     import os
     import sys
     from pathlib import Path
-    from ipdb import set_trace as mybreak  
+    import importlib.util
+    if importlib.util.find_spec("ipdb"):
+      from ipdb import set_trace as mybreak
     #sys.path.append(f'{Path.home()}/pyicon/')
     import pyicon as pyic  
     print('Done loading modules.')
diff --git a/scripts/pyic_intake.py b/scripts/pyic_intake.py
index a3d2306..749d2b8 100755
--- a/scripts/pyic_intake.py
+++ b/scripts/pyic_intake.py
@@ -3,7 +3,9 @@ import os
 import glob
 import yaml
 import argparse
-from ipdb import set_trace as mybreak
+import importlib.util
+if importlib.util.find_spec("ipdb"):
+  from ipdb import set_trace as mybreak
 import sys
 from netCDF4 import Dataset
 import pandas as pd
diff --git a/scripts/pyic_sec.py b/scripts/pyic_sec.py
index 87c57d8..58bd3d4 100755
--- a/scripts/pyic_sec.py
+++ b/scripts/pyic_sec.py
@@ -147,6 +147,9 @@ def main():
     import sys
     from pathlib import Path
     from ipdb import set_trace as mybreak  
+    import importlib.util
+    if importlib.util.find_spec("ipdb"):
+      from ipdb import set_trace as mybreak
     #sys.path.append(f'{Path.home()}/pyicon/')
     import pyicon as pyic  
     print('Done loading modules.')
diff --git a/scripts/pyic_view.py b/scripts/pyic_view.py
index 3785dc5..eb6db36 100755
--- a/scripts/pyic_view.py
+++ b/scripts/pyic_view.py
@@ -9,7 +9,9 @@ import pyicon as pyic
 import cartopy.crs as ccrs
 import glob
 from pyicon import params
-from ipdb import set_trace as mybreak
+import importlib.util
+if importlib.util.find_spec("ipdb"):
+  from ipdb import set_trace as mybreak
 import cmocean
 from pyproj import Proj, CRS, Transformer
 
-- 
GitLab