This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author brett.cannon
Recipients Arfrever, barry, berker.peksag, brett.cannon, eric.snow, josh.r, jwilk, larry, ncoghlan, njs, serhiy.storchaka, takluyver
Date 2015-08-25.18:52:51
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1440528771.76.0.811516212169.issue24305@psf.upfronthosting.co.za>
In-reply-to
Content
So there are two approaches I see to solving this whole thing. One is for there to be a slight divergence between the C code and the Python code. For _warnings.warn(), nothing changes. For warnings.warn(), though, it does the expected frame skipping. This would mean that _warnings.warn() continues to exist for startup purposes but then user-level code and non-startup code uses the Python version that has the expected semantics. This requires figuring out why not importing _warnings.warn in warnings.py causes test failures.

The other option is someone helps me figure out why the C code is causing its test failures by triggering a -11 return in threaded/subprocess tests and prevent the divergence.

I have opened issue #24938 to actually re-evaluate one of the key points of _warnings.c which was startup performance. This was done about 7 years ago which pre-dates freezing code and providing simple C wrappers as necessary for internal use in Python like we do with importlib.
History
Date User Action Args
2015-08-25 18:52:51brett.cannonsetrecipients: + brett.cannon, barry, ncoghlan, larry, jwilk, Arfrever, njs, eric.snow, takluyver, berker.peksag, serhiy.storchaka, josh.r
2015-08-25 18:52:51brett.cannonsetmessageid: <1440528771.76.0.811516212169.issue24305@psf.upfronthosting.co.za>
2015-08-25 18:52:51brett.cannonlinkissue24305 messages
2015-08-25 18:52:51brett.cannoncreate