provides a clearer warning message when cheap inheritance with the underlying socket object is used
diff --git a/Lib/asyncore.py b/Lib/asyncore.py
index 5aec688..ce18d83 100644
--- a/Lib/asyncore.py
+++ b/Lib/asyncore.py
@@ -407,8 +407,9 @@
raise AttributeError("%s instance has no attribute '%s'"
%(self.__class__.__name__, attr))
else:
- warnings.warn("cheap inheritance is deprecated", DeprecationWarning,
- stacklevel=2)
+ msg = "%(me)s.%(attr)s is deprecated. Use %(me)s.socket.%(attr)s " \
+ "instead." % {'me': self.__class__.__name__, 'attr':attr}
+ warnings.warn(msg, DeprecationWarning, stacklevel=2)
return retattr
# log and log_info may be overridden to provide more sophisticated