Merge 3.2
diff --git a/Lib/packaging/run.py b/Lib/packaging/run.py
index 59ad6ee..671a4bf 100644
--- a/Lib/packaging/run.py
+++ b/Lib/packaging/run.py
@@ -500,7 +500,7 @@
             for help_option, short, desc, func in cmd_class.help_options:
                 if hasattr(opts, help_option.replace('-', '_')):
                     help_option_found = True
-                    if hasattr(func, '__call__'):
+                    if callable(func):
                         func()
                     else:
                         raise PackagingClassError(