New submission from Amaury Forgeot d'Arc <[EMAIL PROTECTED]>: With python2.6, reloading extension modules does not always leak memory:
Python 2.6b2+ (trunk, Aug 19 2008, 23:45:24) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import sys [34467 refs] >>> import audioop; del sys.modules['audioop'] [34677 refs] >>> import audioop; del sys.modules['audioop'] [34677 refs] But with 3.0, reloading audioop leaks 60 references every time (seen in test_unittest): Python 3.0b3+ (py3k, Aug 24 2008, 21:56:40) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import sys [42018 refs] >>> import audioop; del sys.modules['audioop'] [42257 refs] >>> import audioop; del sys.modules['audioop'] [42317 refs] >>> import audioop; del sys.modules['audioop'] [42377 refs] >>> import audioop; del sys.modules['audioop'] [42437 refs] >>> import audioop; del sys.modules['audioop'] [42497 refs] OK, many things cannot be reinitialized for C-written modules (static variables &co), this is not the case for audioop. Furthermore, I thought that the new module API was to support proper cleanup of modules ---------- messages: 71867 nosy: amaury.forgeotdarc priority: release blocker severity: normal status: open title: Reloading an extension module always leaks versions: Python 3.0 _______________________________________ Python tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue3667> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com