> Just to mention it, I actually like the new API a lot, and we'll build upon > that to provide better module cleanup support in later versions. That's > something that we were missing for a while already.
Thanks. That actually needs proof in reality, as all core modules currently only have the minimum compatibility with the API. So if you could actually stress the API before the release, that would be quite useful. I found a few aspects to be difficult in porting some existing modules: - PyModule_Create only creates the module, and doesn't yet put it into sys.modules. I find that more correct, as initialization might fail, in which case the regular cleanup should apply (i.e. decrefing the module). However, _sre relied on the module already being in sys.modules, as it runs Python code in the init function that already imports the module being initialized. - the module object becomes the self parameter to module-level functions. This broke some modules who have module-level functions that also act as methods, and where checking for self being NULL to find out whether it's the function or the method. To fix them, test whether self is a module (or, vice versa, the expected type). Regards, Martin _______________________________________________ Python-3000 mailing list Python-3000@python.org http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com