diff --git a/km3io/__init__.py b/km3io/__init__.py
index 07632654474275bb88aa984f0fbcdc22396d13cb..131da2d7a91acfdb842571d376e29c48b68914cc 100644
--- a/km3io/__init__.py
+++ b/km3io/__init__.py
@@ -4,7 +4,10 @@ version = get_distribution(__name__).version
 
 import warnings
 
-warnings.simplefilter(action="ignore", category=FutureWarning)  # uproot3
+with warnings.catch_warnings():
+    for warning_category in (FutureWarning, DeprecationWarning):
+        warnings.simplefilter("ignore", category=warning_category)
+    import uproot3
 
 from .offline import OfflineReader
 from .online import OnlineReader
diff --git a/km3io/utils/kprinttree.py b/km3io/utils/kprinttree.py
index 67b5d9fcbc7930fa4332be06ebdc802ae03b4bfc..6a867b153813c7f8f7b2cda10a4630ab43d59010 100644
--- a/km3io/utils/kprinttree.py
+++ b/km3io/utils/kprinttree.py
@@ -16,9 +16,10 @@ Options:
 """
 import warnings
 
-warnings.simplefilter(action="ignore", category=FutureWarning)
-
-import uproot3
+with warnings.catch_warnings():
+    for warning_category in (FutureWarning, DeprecationWarning):
+        warnings.simplefilter("ignore", category=warning_category)
+    import uproot3
 
 
 def print_tree(filename):