[ python-Bugs-862600 ] Assignment to __builtins__.__debug__ doesn't do anything.

SourceForge.net noreply at sourceforge.net
Thu Jan 15 23:08:39 EST 2004


Bugs item #862600, was opened at 2003-12-18 18:55
Message generated for change (Comment added) made by tim_one
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=862600&group_id=5470

Category: Python Interpreter Core
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Jeremy Fincher (jemfinch)
Assigned to: Raymond Hettinger (rhettinger)
Summary: Assignment to __builtins__.__debug__ doesn't do anything.

Initial Comment:
In 2.2, it would dynamically turn off asserts: 
 
Python 2.2.3+ (#1, Sep 30 2003, 01:19:08) 
[GCC 3.3.2 20030908 (Debian prerelease)] on linux2 
Type "help", "copyright", "credits" or "license" for more 
information. 
>>> __debug__ 
1 
>>> __builtins__.__debug__ = 0 
>>> assert 0, "There should be nothing raised." 
>>> 
 
But in 2.3, this changed: 
 
Python 2.3.2 (#2, Nov 11 2003, 00:22:57) 
[GCC 3.3.2 (Debian)] on linux2 
Type "help", "copyright", "credits" or "license" for more 
information. 
>>> __debug__ 
True 
>>> __builtins__debug__ = False 
>>> assert 0, "There should be nothing raised." 
Traceback (most recent call last): 
  File "<stdin>", line 1, in ? 
AssertionError: There should be nothing raised. 
>>> 
 
If this is in fact the intended behavior (I hope it's not) then 
what's an application author to do when he wants to offer 
users a -O option *to his application* that turns off asserts? 

----------------------------------------------------------------------

>Comment By: Tim Peters (tim_one)
Date: 2004-01-15 23:08

Message:
Logged In: YES 
user_id=31435

The NEWS file in your Python distribution, under the notes for 
2.3 alpha 1, says:

"""
- The assert statement no longer tests __debug__ at 
runtime.  This means that assert statements cannot be 
disabled by assigning a false value to __debug__.
"""

Do a Google search on

site:mail.python.org python-dev assert __debug__

if you want to read a lot more about it.  The decision on 
Guido's part was certainly intentional.  If people had griped 
during the extremely long alpha/beta/release_candidate 2.3 
cycle, he might have backed off -- but nobody did, so you're 
best off to consider this one a dead issue.

----------------------------------------------------------------------

Comment By: Jeremy Fincher (jemfinch)
Date: 2004-01-15 22:38

Message:
Logged In: YES 
user_id=99508

Is this something that's likely to get fixed, or is it
something that I should start developing a workaround for?

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=862600&group_id=5470



More information about the Python-bugs-list mailing list