diff --git a/rhodecode/config/middleware.py b/rhodecode/config/middleware.py index 2cd20d31..45700022 100644 --- a/rhodecode/config/middleware.py +++ b/rhodecode/config/middleware.py @@ -106,6 +106,7 @@ def make_pyramid_app(global_config, **settings): # Apply compatibility patches patches.inspect_getargspec() patches.repoze_sendmail_lf_fix() + patches.suppress_pkg_resources_warnings() # first init, so load_pyramid_enviroment, can access some critical data, like __file__ propagate_rhodecode_config(global_config, {}, {}, full=False) diff --git a/rhodecode/config/patches.py b/rhodecode/config/patches.py index f5565327..e732bad2 100644 --- a/rhodecode/config/patches.py +++ b/rhodecode/config/patches.py @@ -169,3 +169,17 @@ def repoze_sendmail_lf_fix(): from email.policy import SMTP encoding.encode_message = lambda message, *args, **kwargs: message.as_bytes(policy=SMTP) + + +def suppress_pkg_resources_warnings(): + """ + Suppress pkg_resources deprecation warnings from any module. + + pkg_resources is deprecated as of setuptools 81+ and will be removed in 2025-11. + This warning is generated by various modules including pyramid's asset resolution code + which we cannot easily modify. The warning is informational only and does not affect functionality. + """ + import warnings + + warnings.filterwarnings("ignore", message="pkg_resources is deprecated as an API.*", category=UserWarning) + warnings.filterwarnings("ignore", message="pkg_resources is deprecated as an API.*", category=DeprecationWarning)