summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2007-12-02 09:40:06 (GMT)
committerGeorg Brandl <georg@python.org>2007-12-02 09:40:06 (GMT)
commit1a3284ed69d545e4ef59869998cb8c29233a45fa (patch)
tree98728a9b7aae6188ee8124160007a9d5c5277f8c
parent87f9c53937ce47f55851ac7c71a94e46cf9142bf (diff)
downloadcpython-1a3284ed69d545e4ef59869998cb8c29233a45fa.zip
cpython-1a3284ed69d545e4ef59869998cb8c29233a45fa.tar.gz
cpython-1a3284ed69d545e4ef59869998cb8c29233a45fa.tar.bz2
#1535: rename __builtin__ module to builtins.
-rwxr-xr-xDemo/classes/Range.py6
-rw-r--r--Demo/imputil/knee.py6
-rwxr-xr-xDemo/pdist/client.py6
-rw-r--r--Doc/c-api/init.rst8
-rw-r--r--Doc/c-api/intro.rst4
-rw-r--r--Doc/glossary.rst2
-rw-r--r--Doc/library/builtins.rst (renamed from Doc/library/__builtin__.rst)12
-rw-r--r--Doc/library/functions.rst4
-rw-r--r--Doc/library/imputil.rst10
-rw-r--r--Doc/library/python.rst2
-rw-r--r--Doc/library/rlcompleter.rst2
-rw-r--r--Doc/library/runpy.rst2
-rw-r--r--Doc/library/sys.rst2
-rw-r--r--Doc/reference/executionmodel.rst8
-rw-r--r--Doc/reference/lexical_analysis.rst2
-rw-r--r--Doc/reference/toplevel_components.rst4
-rw-r--r--Doc/tutorial/classes.rst2
-rw-r--r--Doc/tutorial/modules.rst8
-rw-r--r--Include/object.h4
-rw-r--r--Lib/aifc.py6
-rw-r--r--Lib/codecs.py4
-rw-r--r--Lib/dumbdbm.py1
-rw-r--r--Lib/gettext.py12
-rw-r--r--Lib/gzip.py8
-rw-r--r--Lib/idlelib/ColorDelegator.py4
-rw-r--r--Lib/idlelib/RemoteDebugger.py2
-rw-r--r--Lib/ihooks.py22
-rw-r--r--Lib/imputil.py6
-rw-r--r--Lib/inspect.py4
-rw-r--r--Lib/io.py2
-rw-r--r--Lib/locale.py2
-rw-r--r--Lib/optparse.py6
-rw-r--r--Lib/pickletools.py72
-rw-r--r--Lib/plat-mac/icopen.py6
-rw-r--r--Lib/py_compile.py4
-rwxr-xr-xLib/pydoc.py10
-rw-r--r--Lib/repr.py10
-rw-r--r--Lib/rlcompleter.py4
-rw-r--r--Lib/site.py18
-rw-r--r--Lib/sunau.py8
-rw-r--r--Lib/tarfile.py2
-rw-r--r--Lib/test/pickletester.py24
-rw-r--r--Lib/test/test_compile.py8
-rw-r--r--Lib/test/test_exceptions.py2
-rw-r--r--Lib/test/test_gettext.py8
-rw-r--r--Lib/test/test_inspect.py4
-rw-r--r--Lib/test/test_iterlen.py2
-rw-r--r--Lib/test/test_pep352.py8
-rw-r--r--Lib/test/test_site.py20
-rw-r--r--Lib/test/test_sys.py10
-rw-r--r--Lib/test/test_traceback.py2
-rw-r--r--Lib/traceback.py2
-rw-r--r--Lib/wave.py6
-rw-r--r--Misc/Vim/vim_syntax.py4
-rw-r--r--Modules/_bsddb.c2
-rw-r--r--Modules/_lsprof.c6
-rw-r--r--Modules/config.c.in2
-rw-r--r--Objects/exceptions.c2
-rw-r--r--Objects/listobject.c2
-rw-r--r--Objects/typeobject.c6
-rw-r--r--PC/bdist_wininst/install.c2
-rw-r--r--PC/config.c2
-rw-r--r--PC/os2emx/config.c2
-rw-r--r--PC/os2vacpp/config.c2
-rw-r--r--Python/bltinmodule.c4
-rw-r--r--Python/errors.c2
-rw-r--r--Python/import.c26
-rw-r--r--Python/pythonrun.c16
-rw-r--r--Python/sysmodule.c8
-rw-r--r--Tools/freeze/makeconfig.py2
70 files changed, 246 insertions, 247 deletions
diff --git a/Demo/classes/Range.py b/Demo/classes/Range.py
index 0f84157..a0cef74 100755
--- a/Demo/classes/Range.py
+++ b/Demo/classes/Range.py
@@ -64,9 +64,9 @@ class oldrange:
def test():
- import time, __builtin__
+ import time, builtins
#Just a quick sanity check
- correct_result = __builtin__.range(5, 100, 3)
+ correct_result = builtins.range(5, 100, 3)
oldrange_result = list(oldrange(5, 100, 3))
genrange_result = list(genrange(5, 100, 3))
if genrange_result != correct_result or oldrange_result != correct_result:
@@ -81,7 +81,7 @@ def test():
for i in genrange(1000):
pass
t3 = time.time()
- for i in __builtin__.range(1000):
+ for i in builtins.range(1000):
pass
t4 = time.time()
print(t2-t1, 'sec (old-style class)')
diff --git a/Demo/imputil/knee.py b/Demo/imputil/knee.py
index 49fdf2b..435b51c 100644
--- a/Demo/imputil/knee.py
+++ b/Demo/imputil/knee.py
@@ -7,7 +7,7 @@ This code is intended to be read, not executed. However, it does work
"""
-import sys, imp, __builtin__
+import sys, imp, builtins
# Replacement for __import__()
@@ -117,7 +117,7 @@ def reload(module):
# Save the original hooks
-original_import = __builtin__.__import__
+original_import = builtins.__import__
# Now install our hooks
-__builtin__.__import__ = import_hook
+builtins.__import__ = import_hook
diff --git a/Demo/pdist/client.py b/Demo/pdist/client.py
index 13158f2..c9fe369 100755
--- a/Demo/pdist/client.py
+++ b/Demo/pdist/client.py
@@ -3,7 +3,7 @@
import sys
import socket
import pickle
-import __builtin__
+import builtins
import os
@@ -90,8 +90,8 @@ class Client:
if exception is None:
return value
x = exception
- if hasattr(__builtin__, exception):
- x = getattr(__builtin__, exception)
+ if hasattr(builtins, exception):
+ x = getattr(builtins, exception)
elif exception in ('posix.error', 'mac.error'):
x = os.error
if x == exception:
diff --git a/Doc/c-api/init.rst b/Doc/c-api/init.rst
index 0058e10..3467ed7 100644
--- a/Doc/c-api/init.rst
+++ b/Doc/c-api/init.rst
@@ -17,7 +17,7 @@ Initialization, Finalization, and Threads
single: PyEval_AcquireLock()
single: modules (in module sys)
single: path (in module sys)
- module: __builtin__
+ module: builtins
module: __main__
module: sys
triple: module; search; path
@@ -29,7 +29,7 @@ Initialization, Finalization, and Threads
exception of :cfunc:`Py_SetProgramName`, :cfunc:`PyEval_InitThreads`,
:cfunc:`PyEval_ReleaseLock`, and :cfunc:`PyEval_AcquireLock`. This initializes
the table of loaded modules (``sys.modules``), and creates the fundamental
- modules :mod:`__builtin__`, :mod:`__main__` and :mod:`sys`. It also initializes
+ modules :mod:`builtins`, :mod:`__main__` and :mod:`sys`. It also initializes
the module search path (``sys.path``). It does not set ``sys.argv``; use
:cfunc:`PySys_SetArgv` for that. This is a no-op when called for a second time
(without calling :cfunc:`Py_Finalize` first). There is no return value; it is a
@@ -83,7 +83,7 @@ Initialization, Finalization, and Threads
.. cfunction:: PyThreadState* Py_NewInterpreter()
.. index::
- module: __builtin__
+ module: builtins
module: __main__
module: sys
single: stdout (in module sys)
@@ -93,7 +93,7 @@ Initialization, Finalization, and Threads
Create a new sub-interpreter. This is an (almost) totally separate environment
for the execution of Python code. In particular, the new interpreter has
separate, independent versions of all imported modules, including the
- fundamental modules :mod:`__builtin__`, :mod:`__main__` and :mod:`sys`. The
+ fundamental modules :mod:`builtins`, :mod:`__main__` and :mod:`sys`. The
table of loaded modules (``sys.modules``) and the module search path
(``sys.path``) are also separate. The new environment has no ``sys.argv``
variable. It has new standard I/O stream file objects ``sys.stdin``,
diff --git a/Doc/c-api/intro.rst b/Doc/c-api/intro.rst
index 60b0052..0717241 100644
--- a/Doc/c-api/intro.rst
+++ b/Doc/c-api/intro.rst
@@ -507,7 +507,7 @@ interpreter can only be used after the interpreter has been initialized.
.. index::
single: Py_Initialize()
- module: __builtin__
+ module: builtins
module: __main__
module: sys
module: exceptions
@@ -516,7 +516,7 @@ interpreter can only be used after the interpreter has been initialized.
The basic initialization function is :cfunc:`Py_Initialize`. This initializes
the table of loaded modules, and creates the fundamental modules
-:mod:`__builtin__`, :mod:`__main__`, :mod:`sys`, and :mod:`exceptions`. It also
+:mod:`builtins`, :mod:`__main__`, :mod:`sys`, and :mod:`exceptions`. It also
initializes the module search path (``sys.path``).
.. index:: single: PySys_SetArgv()
diff --git a/Doc/glossary.rst b/Doc/glossary.rst
index aa69867..cb75f84 100644
--- a/Doc/glossary.rst
+++ b/Doc/glossary.rst
@@ -268,7 +268,7 @@ Glossary
dictionaries. There are the local, global and builtin namespaces as well
as nested namespaces in objects (in methods). Namespaces support
modularity by preventing naming conflicts. For instance, the functions
- :func:`__builtin__.open` and :func:`os.open` are distinguished by their
+ :func:`builtins.open` and :func:`os.open` are distinguished by their
namespaces. Namespaces also aid readability and maintainability by making
it clear which module implements a function. For instance, writing
:func:`random.seed` or :func:`itertools.izip` makes it clear that those
diff --git a/Doc/library/__builtin__.rst b/Doc/library/builtins.rst
index b3e1e11..2a5c7f5 100644
--- a/Doc/library/__builtin__.rst
+++ b/Doc/library/builtins.rst
@@ -1,13 +1,13 @@
-:mod:`__builtin__` --- Built-in objects
-=======================================
+:mod:`builtins` --- Built-in objects
+====================================
-.. module:: __builtin__
+.. module:: builtins
:synopsis: The module that provides the built-in namespace.
This module provides direct access to all 'built-in' identifiers of Python; for
-example, ``__builtin__.open`` is the full name for the built-in function
+example, ``builtins.open`` is the full name for the built-in function
:func:`open`. See chapter :ref:`builtin`.
This module is not normally accessed explicitly by most applications, but can be
@@ -16,10 +16,10 @@ but in which the built-in of that name is also needed. For example, in a module
that wants to implement an :func:`open` function that wraps the built-in
:func:`open`, this module can be used directly::
- import __builtin__
+ import builtins
def open(path):
- f = __builtin__.open(path, 'r')
+ f = builtins.open(path, 'r')
return UpperCaser(f)
class UpperCaser:
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 68601e5..5d0d8a5 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -356,7 +356,7 @@ available. They are listed here in alphabetical order.
dictionaries as global and local namespace. If the *globals* dictionary is
present and lacks '__builtins__', the current globals are copied into *globals*
before *expression* is parsed. This means that *expression* normally has full
- access to the standard :mod:`__builtin__` module and restricted environments are
+ access to the standard :mod:`builtins` module and restricted environments are
propagated. If the *locals* dictionary is omitted it defaults to the *globals*
dictionary. If both dictionaries are omitted, the expression is executed in the
environment where :keyword:`eval` is called. The return value is the result of
@@ -398,7 +398,7 @@ available. They are listed here in alphabetical order.
If the *globals* dictionary does not contain a value for the key
``__builtins__``, a reference to the dictionary of the built-in module
- :mod:`__builtin__` is inserted under that key. That way you can control what
+ :mod:`builtins` is inserted under that key. That way you can control what
builtins are available to the executed code by inserting your own
``__builtins__`` dictionary into *globals* before passing it to :func:`exec`.
diff --git a/Doc/library/imputil.rst b/Doc/library/imputil.rst
index eff1cb9..c05ae1a 100644
--- a/Doc/library/imputil.rst
+++ b/Doc/library/imputil.rst
@@ -108,7 +108,7 @@ This code is intended to be read, not executed. However, it does work
::
- import sys, imp, __builtin__
+ import sys, imp, builtins
# Replacement for __import__()
def import_hook(name, globals=None, locals=None, fromlist=None):
@@ -218,12 +218,12 @@ This code is intended to be read, not executed. However, it does work
# Save the original hooks
- original_import = __builtin__.__import__
- original_reload = __builtin__.reload
+ original_import = builtins.__import__
+ original_reload = builtins.reload
# Now install our hooks
- __builtin__.__import__ = import_hook
- __builtin__.reload = reload_hook
+ builtins.__import__ = import_hook
+ builtins.reload = reload_hook
.. index::
module: knee
diff --git a/Doc/library/python.rst b/Doc/library/python.rst
index 3384322..0fdfa53 100644
--- a/Doc/library/python.rst
+++ b/Doc/library/python.rst
@@ -13,7 +13,7 @@ overview:
.. toctree::
sys.rst
- __builtin__.rst
+ builtins.rst
__main__.rst
warnings.rst
contextlib.rst
diff --git a/Doc/library/rlcompleter.rst b/Doc/library/rlcompleter.rst
index 402a120..cec1e86 100644
--- a/Doc/library/rlcompleter.rst
+++ b/Doc/library/rlcompleter.rst
@@ -55,7 +55,7 @@ Completer objects have the following method:
Return the *state*th completion for *text*.
If called for *text* that doesn't include a period character (``'.'``), it will
- complete from names currently defined in :mod:`__main__`, :mod:`__builtin__` and
+ complete from names currently defined in :mod:`__main__`, :mod:`builtins` and
keywords (as defined by the :mod:`keyword` module).
If called for a dotted name, it will try to evaluate anything without obvious
diff --git a/Doc/library/runpy.rst b/Doc/library/runpy.rst
index d476879..2254906 100644
--- a/Doc/library/runpy.rst
+++ b/Doc/library/runpy.rst
@@ -46,7 +46,7 @@ The :mod:`runpy` module provides a single function:
does not make filename information available, this variable is set to ``None``.
``__builtins__`` is automatically initialised with a reference to the top level
- namespace of the :mod:`__builtin__` module.
+ namespace of the :mod:`builtins` module.
If the argument *alter_sys* is supplied and evaluates to ``True``, then
``sys.argv[0]`` is updated with the value of ``__file__`` and
diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst
index 33de4f6..3b9112a 100644
--- a/Doc/library/sys.rst
+++ b/Doc/library/sys.rst
@@ -78,7 +78,7 @@ always available.
.. function:: displayhook(value)
If *value* is not ``None``, this function prints it to ``sys.stdout``, and saves
- it in ``__builtin__._``.
+ it in ``builtins._``.
``sys.displayhook`` is called on the result of evaluating an expression entered
in an interactive Python session. The display of these values can be customized
diff --git a/Doc/reference/executionmodel.rst b/Doc/reference/executionmodel.rst
index 1478cc7..1f85e49 100644
--- a/Doc/reference/executionmodel.rst
+++ b/Doc/reference/executionmodel.rst
@@ -105,7 +105,7 @@ If the :keyword:`global` statement occurs within a block, all uses of the name
specified in the statement refer to the binding of that name in the top-level
namespace. Names are resolved in the top-level namespace by searching the
global namespace, i.e. the namespace of the module containing the code block,
-and the builtin namespace, the namespace of the module :mod:`__builtin__`. The
+and the builtin namespace, the namespace of the module :mod:`builtins`. The
global namespace is searched first. If the name is not found there, the builtin
namespace is searched. The global statement must precede all uses of the name.
@@ -117,8 +117,8 @@ The built-in namespace associated with the execution of a code block is actually
found by looking up the name ``__builtins__`` in its global namespace; this
should be a dictionary or a module (in the latter case the module's dictionary
is used). By default, when in the :mod:`__main__` module, ``__builtins__`` is
-the built-in module :mod:`__builtin__` (note: no 's'); when in any other module,
-``__builtins__`` is an alias for the dictionary of the :mod:`__builtin__` module
+the built-in module :mod:`builtins`; when in any other module,
+``__builtins__`` is an alias for the dictionary of the :mod:`builtins` module
itself. ``__builtins__`` can be set to a user-created dictionary to create a
weak form of restricted execution.
@@ -126,7 +126,7 @@ weak form of restricted execution.
Users should not touch ``__builtins__``; it is strictly an implementation
detail. Users wanting to override values in the built-in namespace should
- :keyword:`import` the :mod:`__builtin__` (no 's') module and modify its
+ :keyword:`import` the :mod:`builtins` module and modify its
attributes appropriately.
.. index:: module: __main__
diff --git a/Doc/reference/lexical_analysis.rst b/Doc/reference/lexical_analysis.rst
index 1b315a6..741f8ec 100644
--- a/Doc/reference/lexical_analysis.rst
+++ b/Doc/reference/lexical_analysis.rst
@@ -344,7 +344,7 @@ characters:
``_*``
Not imported by ``from module import *``. The special identifier ``_`` is used
in the interactive interpreter to store the result of the last evaluation; it is
- stored in the :mod:`__builtin__` module. When not in interactive mode, ``_``
+ stored in the :mod:`builtins` module. When not in interactive mode, ``_``
has no special meaning and is not defined. See section :ref:`import`.
.. note::
diff --git a/Doc/reference/toplevel_components.rst b/Doc/reference/toplevel_components.rst
index 0ab9aaf..21f801c 100644
--- a/Doc/reference/toplevel_components.rst
+++ b/Doc/reference/toplevel_components.rst
@@ -23,13 +23,13 @@ Complete Python programs
.. index::
module: sys
module: __main__
- module: __builtin__
+ module: builtins
While a language specification need not prescribe how the language interpreter
is invoked, it is useful to have a notion of a complete Python program. A
complete Python program is executed in a minimally initialized environment: all
built-in and standard modules are available, but none have been initialized,
-except for :mod:`sys` (various system services), :mod:`__builtin__` (built-in
+except for :mod:`sys` (various system services), :mod:`builtins` (built-in
functions, exceptions and ``None``) and :mod:`__main__`. The latter is used to
provide the local and global namespace for execution of the complete program.
diff --git a/Doc/tutorial/classes.rst b/Doc/tutorial/classes.rst
index 4e95419..577c7e9 100644
--- a/Doc/tutorial/classes.rst
+++ b/Doc/tutorial/classes.rst
@@ -98,7 +98,7 @@ until the interpreter quits. The statements executed by the top-level
invocation of the interpreter, either read from a script file or interactively,
are considered part of a module called :mod:`__main__`, so they have their own
global namespace. (The built-in names actually also live in a module; this is
-called :mod:`__builtin__`.)
+called :mod:`builtins`.)
The local namespace for a function is created when the function is called, and
deleted when the function returns or raises an exception that is not handled
diff --git a/Doc/tutorial/modules.rst b/Doc/tutorial/modules.rst
index 4d8b48f..2a14b35 100644
--- a/Doc/tutorial/modules.rst
+++ b/Doc/tutorial/modules.rst
@@ -308,14 +308,14 @@ Without arguments, :func:`dir` lists the names you have defined currently::
Note that it lists all types of names: variables, modules, functions, etc.
-.. index:: module: __builtin__
+.. index:: module: builtins
:func:`dir` does not list the names of built-in functions and variables. If you
want a list of those, they are defined in the standard module
-:mod:`__builtin__`::
+:mod:`builtins`::
- >>> import __builtin__
- >>> dir(__builtin__)
+ >>> import builtins
+ >>> dir(builtins)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'Buffer
Error', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Excep
diff --git a/Include/object.h b/Include/object.h
index b5ed054..942f801 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -458,8 +458,8 @@ PyAPI_FUNC(void) PyObject_ClearWeakRefs(PyObject *);
extern int _PyObject_SlotCompare(PyObject *, PyObject *);
-/* PyObject_Dir(obj) acts like Python __builtin__.dir(obj), returning a
- list of strings. PyObject_Dir(NULL) is like __builtin__.dir(),
+/* PyObject_Dir(obj) acts like Python builtins.dir(obj), returning a
+ list of strings. PyObject_Dir(NULL) is like builtins.dir(),
returning the names of the current locals. In this case, if there are
no current locals, NULL is returned, and PyErr_Occurred() is false.
*/
diff --git a/Lib/aifc.py b/Lib/aifc.py
index 085fa90..9b41c35 100644
--- a/Lib/aifc.py
+++ b/Lib/aifc.py
@@ -135,7 +135,7 @@ writeframesraw.
"""
import struct
-import __builtin__
+import builtins
__all__ = ["Error","open","openfp"]
@@ -336,7 +336,7 @@ class Aifc_read:
def __init__(self, f):
if type(f) == type(''):
- f = __builtin__.open(f, 'rb')
+ f = builtins.open(f, 'rb')
# else, assume it is an open file object already
self.initfp(f)
@@ -557,7 +557,7 @@ class Aifc_write:
def __init__(self, f):
if type(f) == type(''):
filename = f
- f = __builtin__.open(f, 'wb')
+ f = builtins.open(f, 'wb')
else:
# else, assume it is an open file object already
filename = '???'
diff --git a/Lib/codecs.py b/Lib/codecs.py
index 982c282..06cec17 100644
--- a/Lib/codecs.py
+++ b/Lib/codecs.py
@@ -7,7 +7,7 @@ Written by Marc-Andre Lemburg (mal@lemburg.com).
"""#"
-import __builtin__, sys
+import builtins, sys
### Registry and builtin stateless codec functions
@@ -858,7 +858,7 @@ def open(filename, mode='rb', encoding=None, errors='strict', buffering=1):
'b' not in mode:
# Force opening of the file in binary mode
mode = mode + 'b'
- file = __builtin__.open(filename, mode, buffering)
+ file = builtins.open(filename, mode, buffering)
if encoding is None:
return file
info = lookup(encoding)
diff --git a/Lib/dumbdbm.py b/Lib/dumbdbm.py
index 7741fbb..e44e1f5 100644
--- a/Lib/dumbdbm.py
+++ b/Lib/dumbdbm.py
@@ -23,7 +23,6 @@ is read when the database is opened, and some updates rewrite the whole index)
import io as _io
import os as _os
-import __builtin__
import UserDict
_BLOCKSIZE = 512
diff --git a/Lib/gettext.py b/Lib/gettext.py
index be24f1d..6e14a93 100644
--- a/Lib/gettext.py
+++ b/Lib/gettext.py
@@ -236,18 +236,18 @@ class NullTranslations:
self._output_charset = charset
def install(self, str=False, names=None):
- import __builtin__
- __builtin__.__dict__['_'] = str and self.ugettext or self.gettext
+ import builtins
+ builtins.__dict__['_'] = str and self.ugettext or self.gettext
if hasattr(names, "__contains__"):
if "gettext" in names:
- __builtin__.__dict__['gettext'] = __builtin__.__dict__['_']
+ builtins.__dict__['gettext'] = builtins.__dict__['_']
if "ngettext" in names:
- __builtin__.__dict__['ngettext'] = (str and self.ungettext
+ builtins.__dict__['ngettext'] = (str and self.ungettext
or self.ngettext)
if "lgettext" in names:
- __builtin__.__dict__['lgettext'] = self.lgettext
+ builtins.__dict__['lgettext'] = self.lgettext
if "lngettext" in names:
- __builtin__.__dict__['lngettext'] = self.lngettext
+ builtins.__dict__['lngettext'] = self.lngettext
class GNUTranslations(NullTranslations):
diff --git a/Lib/gzip.py b/Lib/gzip.py
index 4f750c0..a044087 100644
--- a/Lib/gzip.py
+++ b/Lib/gzip.py
@@ -7,7 +7,7 @@ but random access is not allowed."""
import struct, sys, time
import zlib
-import __builtin__
+import builtins
__all__ = ["GzipFile","open"]
@@ -92,7 +92,7 @@ class GzipFile:
if mode and 'b' not in mode:
mode += 'b'
if fileobj is None:
- fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb')
+ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb')
if filename is None:
if hasattr(fileobj, 'name'): filename = fileobj.name
else: filename = ''
@@ -487,13 +487,13 @@ def _test():
print("filename doesn't end in .gz:", repr(arg))
continue
f = open(arg, "rb")
- g = __builtin__.open(arg[:-3], "wb")
+ g = builtins.open(arg[:-3], "wb")
else:
if arg == "-":
f = sys.stdin
g = GzipFile(filename="", mode="wb", fileobj=sys.stdout)
else:
- f = __builtin__.open(arg, "rb")
+ f = builtins.open(arg, "rb")
g = open(arg + ".gz", "wb")
while True:
chunk = f.read(1024)
diff --git a/Lib/idlelib/ColorDelegator.py b/Lib/idlelib/ColorDelegator.py
index b93aa5a..e7112c9 100644
--- a/Lib/idlelib/ColorDelegator.py
+++ b/Lib/idlelib/ColorDelegator.py
@@ -1,7 +1,7 @@
import time
import re
import keyword
-import __builtin__
+import builtins
from Tkinter import *
from idlelib.Delegator import Delegator
from idlelib.configHandler import idleConf
@@ -14,7 +14,7 @@ def any(name, alternates):
def make_pat():
kw = r"\b" + any("KEYWORD", keyword.kwlist) + r"\b"
- builtinlist = [str(name) for name in dir(__builtin__)
+ builtinlist = [str(name) for name in dir(builtins)
if not name.startswith('_')]
# self.file = open("file") :
# 1st 'file' colorized normal, 2nd as builtin, 3rd as string
diff --git a/Lib/idlelib/RemoteDebugger.py b/Lib/idlelib/RemoteDebugger.py
index e5b95b4..46582d1 100644
--- a/Lib/idlelib/RemoteDebugger.py
+++ b/Lib/idlelib/RemoteDebugger.py
@@ -172,7 +172,7 @@ class IdbAdapter:
def dict_item(self, did, key):
dict = dicttable[did]
value = dict[key]
- value = repr(value) ### can't pickle module '__builtin__'
+ value = repr(value) ### can't pickle module 'builtins'
return value
#----------end class IdbAdapter----------
diff --git a/Lib/ihooks.py b/Lib/ihooks.py
index d2eabc4..433f513 100644
--- a/Lib/ihooks.py
+++ b/Lib/ihooks.py
@@ -49,7 +49,7 @@ by the way the __import__ hook is used by the Python interpreter.)
"""
-import __builtin__
+import builtins
import imp
import os
import sys
@@ -375,18 +375,18 @@ class BasicModuleImporter(_Verbose):
# XXX Should this try to clear the module's namespace?
def install(self):
- self.save_import_module = __builtin__.__import__
- if not hasattr(__builtin__, 'unload'):
- __builtin__.unload = None
- self.save_unload = __builtin__.unload
- __builtin__.__import__ = self.import_module
- __builtin__.unload = self.unload
+ self.save_import_module = builtins.__import__
+ if not hasattr(builtins, 'unload'):
+ builtins.unload = None
+ self.save_unload = builtins.unload
+ builtins.__import__ = self.import_module
+ builtins.unload = self.unload
def uninstall(self):
- __builtin__.__import__ = self.save_import_module
- __builtin__.unload = self.save_unload
- if not __builtin__.unload:
- del __builtin__.unload
+ builtins.__import__ = self.save_import_module
+ builtins.unload = self.save_unload
+ if not builtins.unload:
+ del builtins.unload
class ModuleImporter(BasicModuleImporter):
diff --git a/Lib/imputil.py b/Lib/imputil.py
index 1d09ba5..4278e31 100644
--- a/Lib/imputil.py
+++ b/Lib/imputil.py
@@ -13,7 +13,7 @@ Exported classes:
# note: avoid importing non-builtin modules
import imp ### not available in JPython?
import sys
-import __builtin__
+import builtins
# for the DirectoryImporter
import struct
@@ -26,7 +26,7 @@ _ModuleType = type(sys) ### doesn't work in JPython...
class ImportManager:
"Manage the import process."
- def install(self, namespace=vars(__builtin__)):
+ def install(self, namespace=vars(builtins)):
"Install this ImportManager into the specified namespace."
if isinstance(namespace, _ModuleType):
@@ -404,7 +404,7 @@ def _compile(pathname, timestamp):
codestring = open(pathname, 'rU').read()
if codestring and codestring[-1] != '\n':
codestring = codestring + '\n'
- code = __builtin__.compile(codestring, pathname, 'exec')
+ code = builtins.compile(codestring, pathname, 'exec')
# try to cache the compiled code
try:
diff --git a/Lib/inspect.py b/Lib/inspect.py
index a1910e4..994dbdc 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -444,7 +444,7 @@ def getmodule(object, _filename=None):
if mainobject is object:
return main
# Check builtins
- builtin = sys.modules['__builtin__']
+ builtin = sys.modules['builtins']
if hasattr(builtin, object.__name__):
builtinobject = getattr(builtin, object.__name__)
if builtinobject is object:
@@ -775,7 +775,7 @@ def strseq(object, convert, join=joinseq):
def formatannotation(annotation, base_module=None):
if isinstance(annotation, type):
- if annotation.__module__ in ('__builtin__', base_module):
+ if annotation.__module__ in ('builtins', base_module):
return annotation.__name__
return annotation.__module__+'.'+annotation.__name__
return repr(annotation)
diff --git a/Lib/io.py b/Lib/io.py
index f66f48b..ff03901 100644
--- a/Lib/io.py
+++ b/Lib/io.py
@@ -184,7 +184,7 @@ def open(file, mode="r", buffering=None, encoding=None, newline=None,
class OpenWrapper:
- """Wrapper for __builtin__.open
+ """Wrapper for builtins.open
Trick so that open won't become a bound method when stored
as a class variable (as dumbdbm does).
diff --git a/Lib/locale.py b/Lib/locale.py
index 3f30ca0..ce0ca81 100644
--- a/Lib/locale.py
+++ b/Lib/locale.py
@@ -12,7 +12,7 @@
"""
import sys, encodings, encodings.aliases
-from __builtin__ import str as _builtin_str
+from builtins import str as _builtin_str
# Try importing the _locale module.
#
diff --git a/Lib/optparse.py b/Lib/optparse.py
index f702e1a..ab2ce40 100644
--- a/Lib/optparse.py
+++ b/Lib/optparse.py
@@ -636,13 +636,13 @@ class Option:
else:
# Allow type objects or builtin type conversion functions
# (int, str, etc.) as an alternative to their names. (The
- # complicated check of __builtin__ is only necessary for
+ # complicated check of builtins is only necessary for
# Python 2.1 and earlier, and is short-circuited by the
# first check on modern Pythons.)
- import __builtin__
+ import builtins
if ( isinstance(self.type, type) or
(hasattr(self.type, "__name__") and
- getattr(__builtin__, self.type.__name__, None) is self.type) ):
+ getattr(builtins, self.type.__name__, None) is self.type) ):
self.type = self.type.__name__
if self.type == "str":
diff --git a/Lib/pickletools.py b/Lib/pickletools.py
index af84c1f..0665cd0 100644
--- a/Lib/pickletools.py
+++ b/Lib/pickletools.py
@@ -2054,25 +2054,25 @@ highest protocol among opcodes = 0
33: ( MARK
34: c GLOBAL 'pickletools _Example'
56: p PUT 2
- 59: c GLOBAL '__builtin__ object'
- 79: p PUT 3
- 82: N NONE
- 83: t TUPLE (MARK at 33)
- 84: p PUT 4
- 87: R REDUCE
- 88: p PUT 5
- 91: ( MARK
- 92: d DICT (MARK at 91)
- 93: p PUT 6
- 96: V UNICODE 'value'
- 103: p PUT 7
- 106: L LONG 42
- 110: s SETITEM
- 111: b BUILD
- 112: a APPEND
- 113: g GET 5
- 116: a APPEND
- 117: . STOP
+ 59: c GLOBAL 'builtins object'
+ 76: p PUT 3
+ 79: N NONE
+ 80: t TUPLE (MARK at 33)
+ 81: p PUT 4
+ 84: R REDUCE
+ 85: p PUT 5
+ 88: ( MARK
+ 89: d DICT (MARK at 88)
+ 90: p PUT 6
+ 93: V UNICODE 'value'
+ 100: p PUT 7
+ 103: L LONG 42
+ 107: s SETITEM
+ 108: b BUILD
+ 109: a APPEND
+ 110: g GET 5
+ 113: a APPEND
+ 114: . STOP
highest protocol among opcodes = 0
>>> dis(pickle.dumps(x, 1))
@@ -2084,23 +2084,23 @@ highest protocol among opcodes = 0
31: ( MARK
32: c GLOBAL 'pickletools _Example'
54: q BINPUT 2
- 56: c GLOBAL '__builtin__ object'
- 76: q BINPUT 3
- 78: N NONE
- 79: t TUPLE (MARK at 31)
- 80: q BINPUT 4
- 82: R REDUCE
- 83: q BINPUT 5
- 85: } EMPTY_DICT
- 86: q BINPUT 6
- 88: X BINUNICODE 'value'
- 98: q BINPUT 7
- 100: K BININT1 42
- 102: s SETITEM
- 103: b BUILD
- 104: h BINGET 5
- 106: e APPENDS (MARK at 3)
- 107: . STOP
+ 56: c GLOBAL 'builtins object'
+ 73: q BINPUT 3
+ 75: N NONE
+ 76: t TUPLE (MARK at 31)
+ 77: q BINPUT 4
+ 79: R REDUCE
+ 80: q BINPUT 5
+ 82: } EMPTY_DICT
+ 83: q BINPUT 6
+ 85: X BINUNICODE 'value'
+ 95: q BINPUT 7
+ 97: K BININT1 42
+ 99: s SETITEM
+ 100: b BUILD
+ 101: h BINGET 5
+ 103: e APPENDS (MARK at 3)
+ 104: . STOP
highest protocol among opcodes = 1
Try "the canonical" recursive-object test.
diff --git a/Lib/plat-mac/icopen.py b/Lib/plat-mac/icopen.py
index eea6083..146a333 100644
--- a/Lib/plat-mac/icopen.py
+++ b/Lib/plat-mac/icopen.py
@@ -37,9 +37,9 @@ The next time you launch PythonInterpreter or Python IDE, the patch will take
effect.
"""
-import __builtin__
+import builtins
-_builtin_open = globals().get('_builtin_open', __builtin__.open)
+_builtin_open = globals().get('_builtin_open', builtins.open)
def _open_with_typer(*args):
file = _builtin_open(*args)
@@ -55,7 +55,7 @@ def _open_with_typer(*args):
pass
return file
-__builtin__.open = _open_with_typer
+builtins.open = _open_with_typer
"""
open('test.py')
diff --git a/Lib/py_compile.py b/Lib/py_compile.py
index 912972b..982d19d 100644
--- a/Lib/py_compile.py
+++ b/Lib/py_compile.py
@@ -3,7 +3,7 @@
This module has intimate knowledge of the format of .pyc files.
"""
-import __builtin__
+import builtins
import imp
import marshal
import os
@@ -139,7 +139,7 @@ def compile(file, cfile=None, dfile=None, doraise=False):
if codestring and codestring[-1] != '\n':
codestring = codestring + '\n'
try:
- codeobject = __builtin__.compile(codestring, dfile or file,'exec')
+ codeobject = builtins.compile(codestring, dfile or file,'exec')
except Exception as err:
py_exc = PyCompileError(err.__class__, err, dfile or file)
if doraise:
diff --git a/Lib/pydoc.py b/Lib/pydoc.py
index 51d627e..d94c3d3 100755
--- a/Lib/pydoc.py
+++ b/Lib/pydoc.py
@@ -52,7 +52,7 @@ Richard Chamberlain, for the first implementation of textdoc.
# the current directory is changed with os.chdir(), an incorrect
# path will be displayed.
-import sys, imp, os, re, inspect, __builtin__, pkgutil
+import sys, imp, os, re, inspect, builtins, pkgutil
from repr import Repr
try:
from collections import deque
@@ -787,7 +787,7 @@ class HTMLDoc(Doc):
thisclass = attrs[0][2]
attrs, inherited = _split_list(attrs, lambda t: t[2] is thisclass)
- if thisclass is __builtin__.object:
+ if thisclass is builtins.object:
attrs = inherited
continue
elif thisclass is object:
@@ -1184,7 +1184,7 @@ class TextDoc(Doc):
thisclass = attrs[0][2]
attrs, inherited = _split_list(attrs, lambda t: t[2] is thisclass)
- if thisclass is __builtin__.object:
+ if thisclass is builtins.object:
attrs = inherited
continue
elif thisclass is object:
@@ -1450,8 +1450,8 @@ def locate(path, forceload=0):
except AttributeError: return None
return object
else:
- if hasattr(__builtin__, path):
- return getattr(__builtin__, path)
+ if hasattr(builtins, path):
+ return getattr(builtins, path)
# --------------------------------------- interactive interpreter interface
diff --git a/Lib/repr.py b/Lib/repr.py
index ceb36f9..9893c71 100644
--- a/Lib/repr.py
+++ b/Lib/repr.py
@@ -2,7 +2,7 @@
__all__ = ["Repr","repr"]
-import __builtin__
+import builtins
from itertools import islice
class Repr:
@@ -84,16 +84,16 @@ class Repr:
return '{%s}' % (s,)
def repr_str(self, x, level):
- s = __builtin__.repr(x[:self.maxstring])
+ s = builtins.repr(x[:self.maxstring])
if len(s) > self.maxstring:
i = max(0, (self.maxstring-3)//2)
j = max(0, self.maxstring-3-i)
- s = __builtin__.repr(x[:i] + x[len(x)-j:])
+ s = builtins.repr(x[:i] + x[len(x)-j:])
s = s[:i] + '...' + s[len(s)-j:]
return s
def repr_int(self, x, level):
- s = __builtin__.repr(x) # XXX Hope this isn't too slow...
+ s = builtins.repr(x) # XXX Hope this isn't too slow...
if len(s) > self.maxlong:
i = max(0, (self.maxlong-3)//2)
j = max(0, self.maxlong-3-i)
@@ -102,7 +102,7 @@ class Repr:
def repr_instance(self, x, level):
try:
- s = __builtin__.repr(x)
+ s = builtins.repr(x)
# Bugs in x.__repr__() can cause arbitrary
# exceptions -- then make up something
except Exception:
diff --git a/Lib/rlcompleter.py b/Lib/rlcompleter.py
index 1c5750b..74b2e47 100644
--- a/Lib/rlcompleter.py
+++ b/Lib/rlcompleter.py
@@ -33,7 +33,7 @@ used, and this module (and the readline module) are silently inactive.
"""
-import __builtin__
+import builtins
import __main__
__all__ = ["Completer"]
@@ -97,7 +97,7 @@ class Completer:
matches = []
n = len(text)
for list in [keyword.kwlist,
- __builtin__.__dict__,
+ builtins.__dict__,
self.namespace]:
for word in list:
if word[:n] == text and word != "__builtins__":
diff --git a/Lib/site.py b/Lib/site.py
index f1db89c..b97f945 100644
--- a/Lib/site.py
+++ b/Lib/site.py
@@ -60,7 +60,7 @@ ImportError exception, it is silently ignored.
import sys
import os
-import __builtin__
+import builtins
def makepath(*paths):
@@ -251,8 +251,8 @@ def setquit():
except:
pass
raise SystemExit(code)
- __builtin__.quit = Quitter('quit')
- __builtin__.exit = Quitter('exit')
+ builtins.quit = Quitter('quit')
+ builtins.exit = Quitter('exit')
class _Printer(object):
@@ -319,18 +319,18 @@ class _Printer(object):
break
def setcopyright():
- """Set 'copyright' and 'credits' in __builtin__"""
- __builtin__.copyright = _Printer("copyright", sys.copyright)
+ """Set 'copyright' and 'credits' in builtins"""
+ builtins.copyright = _Printer("copyright", sys.copyright)
if sys.platform[:4] == 'java':
- __builtin__.credits = _Printer(
+ builtins.credits = _Printer(
"credits",
"Jython is maintained by the Jython developers (www.jython.org).")
else:
- __builtin__.credits = _Printer("credits", """\
+ builtins.credits = _Printer("credits", """\
Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
for supporting Python development. See www.python.org for more information.""")
here = os.path.dirname(os.__file__)
- __builtin__.license = _Printer(
+ builtins.license = _Printer(
"license", "See http://www.python.org/%.3s/license.html" % sys.version,
["LICENSE.txt", "LICENSE"],
[os.path.join(here, os.pardir), here, os.curdir])
@@ -350,7 +350,7 @@ class _Helper(object):
return pydoc.help(*args, **kwds)
def sethelper():
- __builtin__.help = _Helper()
+ builtins.help = _Helper()
def aliasmbcs():
"""On Windows, some default encodings are not provided by Python,
diff --git a/Lib/sunau.py b/Lib/sunau.py
index f255502..b312501 100644
--- a/Lib/sunau.py
+++ b/Lib/sunau.py
@@ -153,8 +153,8 @@ class Au_read:
def __init__(self, f):
if type(f) == type(''):
- import __builtin__
- f = __builtin__.open(f, 'rb')
+ import builtins
+ f = builtins.open(f, 'rb')
self.initfp(f)
def __del__(self):
@@ -282,8 +282,8 @@ class Au_write:
def __init__(self, f):
if type(f) == type(''):
- import __builtin__
- f = __builtin__.open(f, 'wb')
+ import builtins
+ f = builtins.open(f, 'wb')
self.initfp(f)
def __del__(self):
diff --git a/Lib/tarfile.py b/Lib/tarfile.py
index 23252f4..f8afae9 100644
--- a/Lib/tarfile.py
+++ b/Lib/tarfile.py
@@ -65,7 +65,7 @@ except ImportError:
# from tarfile import *
__all__ = ["TarFile", "TarInfo", "is_tarfile", "TarError"]
-from __builtin__ import open as _open # Since 'open' is TarFile.open
+from builtins import open as _open # Since 'open' is TarFile.open
#---------------------------------------------------------
# tar constants
diff --git a/Lib/test/pickletester.py b/Lib/test/pickletester.py
index 6db3572..b20f599 100644
--- a/Lib/test/pickletester.py
+++ b/Lib/test/pickletester.py
@@ -91,7 +91,7 @@ class use_metaclass(object, metaclass=metaclass):
DATA0 = (
b'(lp0\nL0\naL1\naF2.0\nac'
- b'__builtin__\ncomplex\n'
+ b'builtins\ncomplex\n'
b'p1\n(F3.0\nF0.0\ntp2\nRp'
b'3\naL1\naL-1\naL255\naL-'
b'255\naL-256\naL65535\na'
@@ -100,8 +100,8 @@ DATA0 = (
b'647\naL-2147483648\na('
b'Vabc\np4\ng4\nccopy_reg'
b'\n_reconstructor\np5\n('
- b'c__main__\nC\np6\nc__bu'
- b'iltin__\nobject\np7\nNt'
+ b'c__main__\nC\np6\ncbu'
+ b'iltins\nobject\np7\nNt'
b'p8\nRp9\n(dp10\nVfoo\np1'
b'1\nL1\nsVbar\np12\nL2\nsb'
b'g9\ntp13\nag13\naL5\na.'
@@ -118,7 +118,7 @@ DATA0_DIS = """\
12: a APPEND
13: F FLOAT 2.0
18: a APPEND
- 19: c GLOBAL '__builtin__ complex'
+ 19: c GLOBAL 'builtins complex'
40: p PUT 1
43: ( MARK
44: F FLOAT 3.0
@@ -159,7 +159,7 @@ DATA0_DIS = """\
199: ( MARK
200: c GLOBAL '__main__ C'
212: p PUT 6
- 215: c GLOBAL '__builtin__ object'
+ 215: c GLOBAL 'builtins object'
235: p PUT 7
238: N NONE
239: t TUPLE (MARK at 199)
@@ -191,15 +191,15 @@ highest protocol among opcodes = 0
"""
DATA1 = (
- b']q\x00(K\x00K\x01G@\x00\x00\x00\x00\x00\x00\x00c__'
- b'builtin__\ncomplex\nq\x01'
+ b']q\x00(K\x00K\x01G@\x00\x00\x00\x00\x00\x00\x00c'
+ b'builtins\ncomplex\nq\x01'
b'(G@\x08\x00\x00\x00\x00\x00\x00G\x00\x00\x00\x00\x00\x00\x00\x00t'
b'q\x02Rq\x03K\x01J\xff\xff\xff\xffK\xffJ\x01\xff\xff\xffJ'
b'\x00\xff\xff\xffM\xff\xffJ\x01\x00\xff\xffJ\x00\x00\xff\xffJ\xff\xff'
b'\xff\x7fJ\x01\x00\x00\x80J\x00\x00\x00\x80(X\x03\x00\x00\x00ab'
b'cq\x04h\x04ccopy_reg\n_reco'
b'nstructor\nq\x05(c__main'
- b'__\nC\nq\x06c__builtin__\n'
+ b'__\nC\nq\x06cbuiltins\n'
b'object\nq\x07Ntq\x08Rq\t}q\n('
b'X\x03\x00\x00\x00fooq\x0bK\x01X\x03\x00\x00\x00bar'
b'q\x0cK\x02ubh\ttq\rh\rK\x05e.'
@@ -213,7 +213,7 @@ DATA1_DIS = """\
4: K BININT1 0
6: K BININT1 1
8: G BINFLOAT 2.0
- 17: c GLOBAL '__builtin__ complex'
+ 17: c GLOBAL 'builtins complex'
38: q BINPUT 1
40: ( MARK
41: G BINFLOAT 3.0
@@ -242,7 +242,7 @@ DATA1_DIS = """\
152: ( MARK
153: c GLOBAL '__main__ C'
165: q BINPUT 6
- 167: c GLOBAL '__builtin__ object'
+ 167: c GLOBAL 'builtins object'
187: q BINPUT 7
189: N NONE
190: t TUPLE (MARK at 152)
@@ -272,7 +272,7 @@ highest protocol among opcodes = 1
DATA2 = (
b'\x80\x02]q\x00(K\x00K\x01G@\x00\x00\x00\x00\x00\x00\x00c'
- b'__builtin__\ncomplex\n'
+ b'builtins\ncomplex\n'
b'q\x01G@\x08\x00\x00\x00\x00\x00\x00G\x00\x00\x00\x00\x00\x00\x00\x00'
b'\x86q\x02Rq\x03K\x01J\xff\xff\xff\xffK\xffJ\x01\xff\xff\xff'
b'J\x00\xff\xff\xffM\xff\xffJ\x01\x00\xff\xffJ\x00\x00\xff\xffJ\xff'
@@ -292,7 +292,7 @@ DATA2_DIS = """\
6: K BININT1 0
8: K BININT1 1
10: G BINFLOAT 2.0
- 19: c GLOBAL '__builtin__ complex'
+ 19: c GLOBAL 'builtins complex'
40: q BINPUT 1
42: G BINFLOAT 3.0
51: G BINFLOAT 0.0
diff --git a/Lib/test/test_compile.py b/Lib/test/test_compile.py
index e7ffc02..cc490d7 100644
--- a/Lib/test/test_compile.py
+++ b/Lib/test/test_compile.py
@@ -7,10 +7,10 @@ class TestSpecifics(unittest.TestCase):
def test_debug_assignment(self):
# catch assignments to __debug__
self.assertRaises(SyntaxError, compile, '__debug__ = 1', '?', 'single')
- import __builtin__
- prev = __builtin__.__debug__
- setattr(__builtin__, '__debug__', 'sure')
- setattr(__builtin__, '__debug__', prev)
+ import builtins
+ prev = builtins.__debug__
+ setattr(builtins, '__debug__', 'sure')
+ setattr(builtins, '__debug__', prev)
def test_argument_handling(self):
# detect duplicate positional and keyword arguments
diff --git a/Lib/test/test_exceptions.py b/Lib/test/test_exceptions.py
index d1f9b1a..ae4687f 100644
--- a/Lib/test/test_exceptions.py
+++ b/Lib/test/test_exceptions.py
@@ -288,7 +288,7 @@ class ExceptionTests(unittest.TestCase):
raise
else:
# Verify module name
- self.assertEquals(type(e).__module__, '__builtin__')
+ self.assertEquals(type(e).__module__, 'builtins')
# Verify no ref leaks in Exc_str()
s = str(e)
for checkArgName in expected:
diff --git a/Lib/test/test_gettext.py b/Lib/test/test_gettext.py
index 12a657c..a875272 100644
--- a/Lib/test/test_gettext.py
+++ b/Lib/test/test_gettext.py
@@ -146,13 +146,13 @@ trggrkg zrffntr pngnybt yvoenel.''')
t.install(str=True)
eq(_('mullusk'), 'bacon')
# Test installation of other methods
- import __builtin__
+ import builtins
t.install(str=True, names=["gettext", "lgettext"])
eq(_, t.ugettext)
- eq(__builtin__.gettext, t.ugettext)
+ eq(builtins.gettext, t.ugettext)
eq(lgettext, t.lgettext)
- del __builtin__.gettext
- del __builtin__.lgettext
+ del builtins.gettext
+ del builtins.lgettext
class GettextTestCase2(GettextBaseTest):
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py
index 60a7ad1..75e66ed 100644
--- a/Lib/test/test_inspect.py
+++ b/Lib/test/test_inspect.py
@@ -29,7 +29,7 @@ modfile = normcase(modfile)
def revise(filename, *args):
return (normcase(filename),) + args
-import __builtin__
+import builtins
try:
1/0
@@ -197,7 +197,7 @@ class TestRetrievingSourceCode(GetSourceBase):
# Do it again (check the caching isn't broken)
self.assertEqual(inspect.getmodule(mod.StupidGit.abuse), mod)
# Check a builtin
- self.assertEqual(inspect.getmodule(str), sys.modules["__builtin__"])
+ self.assertEqual(inspect.getmodule(str), sys.modules["builtins"])
# Check filename override
self.assertEqual(inspect.getmodule(None, modfile), mod)
diff --git a/Lib/test/test_iterlen.py b/Lib/test/test_iterlen.py
index afd7287..93b77b6 100644
--- a/Lib/test/test_iterlen.py
+++ b/Lib/test/test_iterlen.py
@@ -46,7 +46,7 @@ from test import test_support
from itertools import repeat
from collections import deque
from UserList import UserList
-from __builtin__ import len as _len
+from builtins import len as _len
n = 10
diff --git a/Lib/test/test_pep352.py b/Lib/test/test_pep352.py
index ddeee1a..db117ef 100644
--- a/Lib/test/test_pep352.py
+++ b/Lib/test/test_pep352.py
@@ -1,5 +1,5 @@
import unittest
-import __builtin__
+import builtins
import warnings
from test.test_support import run_unittest
import os
@@ -23,7 +23,7 @@ class ExceptionClassTests(unittest.TestCase):
def test_inheritance(self):
# Make sure the inheritance hierarchy matches the documentation
exc_set = set()
- for object_ in __builtin__.__dict__.values():
+ for object_ in builtins.__dict__.values():
try:
if issubclass(object_, BaseException):
exc_set.add(object_.__name__)
@@ -35,7 +35,7 @@ class ExceptionClassTests(unittest.TestCase):
try:
superclass_name = inheritance_tree.readline().rstrip()
try:
- last_exc = getattr(__builtin__, superclass_name)
+ last_exc = getattr(builtins, superclass_name)
except AttributeError:
self.fail("base class %s not a built-in" % superclass_name)
self.failUnless(superclass_name in exc_set,
@@ -58,7 +58,7 @@ class ExceptionClassTests(unittest.TestCase):
left_bracket = exc_name.index('[')
exc_name = exc_name[:left_bracket-1] # cover space
try:
- exc = getattr(__builtin__, exc_name)
+ exc = getattr(builtins, exc_name)
except AttributeError:
self.fail("%s not a built-in exception" % exc_name)
if last_depth < depth:
diff --git a/Lib/test/test_site.py b/Lib/test/test_site.py
index 11bb674..4624ea6 100644
--- a/Lib/test/test_site.py
+++ b/Lib/test/test_site.py
@@ -6,7 +6,7 @@ executing have not been removed.
"""
import unittest
from test.test_support import TestSkipped, TestFailed, run_unittest, TESTFN
-import __builtin__
+import builtins
import os
import sys
import encodings
@@ -162,7 +162,7 @@ class ImportSideEffectTests(unittest.TestCase):
# as an absolute path.
# Handled by abs__file__()
site.abs__file__()
- for module in (sys, os, __builtin__):
+ for module in (sys, os, builtins):
try:
self.failUnless(os.path.isabs(module.__file__), repr(module))
except AttributeError:
@@ -187,18 +187,18 @@ class ImportSideEffectTests(unittest.TestCase):
pass
def test_setting_quit(self):
- # 'quit' and 'exit' should be injected into __builtin__
- self.failUnless(hasattr(__builtin__, "quit"))
- self.failUnless(hasattr(__builtin__, "exit"))
+ # 'quit' and 'exit' should be injected into builtins
+ self.failUnless(hasattr(builtins, "quit"))
+ self.failUnless(hasattr(builtins, "exit"))
def test_setting_copyright(self):
- # 'copyright' and 'credits' should be in __builtin__
- self.failUnless(hasattr(__builtin__, "copyright"))
- self.failUnless(hasattr(__builtin__, "credits"))
+ # 'copyright' and 'credits' should be in builtins
+ self.failUnless(hasattr(builtins, "copyright"))
+ self.failUnless(hasattr(builtins, "credits"))
def test_setting_help(self):
- # 'help' should be set in __builtin__
- self.failUnless(hasattr(__builtin__, "help"))
+ # 'help' should be set in builtins
+ self.failUnless(hasattr(builtins, "help"))
def test_aliasing_mbcs(self):
if sys.platform == "win32":
diff --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py
index 767f3a8..435a696 100644
--- a/Lib/test/test_sys.py
+++ b/Lib/test/test_sys.py
@@ -15,22 +15,22 @@ class SysModuleTest(unittest.TestCase):
sys.displayhook = self.orig_displayhook
def test_original_displayhook(self):
- import __builtin__
+ import builtins
out = io.StringIO()
sys.stdout = out
dh = sys.__displayhook__
self.assertRaises(TypeError, dh)
- if hasattr(__builtin__, "_"):
- del __builtin__._
+ if hasattr(builtins, "_"):
+ del builtins._
dh(None)
self.assertEqual(out.getvalue(), "")
- self.assert_(not hasattr(__builtin__, "_"))
+ self.assert_(not hasattr(builtins, "_"))
dh(42)
self.assertEqual(out.getvalue(), "42\n")
- self.assertEqual(__builtin__._, 42)
+ self.assertEqual(builtins._, 42)
del sys.stdout
self.assertRaises(RuntimeError, dh, 42)
diff --git a/Lib/test/test_traceback.py b/Lib/test/test_traceback.py
index 36ea067..93e5126 100644
--- a/Lib/test/test_traceback.py
+++ b/Lib/test/test_traceback.py
@@ -65,7 +65,7 @@ class TracebackCases(unittest.TestCase):
err = traceback.format_exception_only(X, X())
self.assertEqual(len(err), 1)
str_value = '<unprintable %s object>' % X.__name__
- if X.__module__ in ('__main__', '__builtin__'):
+ if X.__module__ in ('__main__', 'builtins'):
str_name = X.__name__
else:
str_name = '.'.join([X.__module__, X.__name__])
diff --git a/Lib/traceback.py b/Lib/traceback.py
index 11ece25..0c01ac3 100644
--- a/Lib/traceback.py
+++ b/Lib/traceback.py
@@ -168,7 +168,7 @@ def format_exception_only(etype, value):
stype = etype.__name__
smod = etype.__module__
- if smod not in ("__main__", "__builtin__"):
+ if smod not in ("__main__", "builtins"):
stype = smod + '.' + stype
if not issubclass(etype, SyntaxError):
diff --git a/Lib/wave.py b/Lib/wave.py
index eda3697..8455522 100644
--- a/Lib/wave.py
+++ b/Lib/wave.py
@@ -71,7 +71,7 @@ The close() method is called automatically when the class instance
is destroyed.
"""
-import __builtin__
+import builtins
__all__ = ["open", "openfp", "Error"]
@@ -156,7 +156,7 @@ class Wave_read:
def __init__(self, f):
self._i_opened_the_file = None
if isinstance(f, str):
- f = __builtin__.open(f, 'rb')
+ f = builtins.open(f, 'rb')
self._i_opened_the_file = f
# else, assume it is an open file object already
try:
@@ -300,7 +300,7 @@ class Wave_write:
def __init__(self, f):
self._i_opened_the_file = None
if isinstance(f, str):
- f = __builtin__.open(f, 'wb')
+ f = builtins.open(f, 'wb')
self._i_opened_the_file = f
try:
self.initfp(f)
diff --git a/Misc/Vim/vim_syntax.py b/Misc/Vim/vim_syntax.py
index 3212bf4..14c5512 100644
--- a/Misc/Vim/vim_syntax.py
+++ b/Misc/Vim/vim_syntax.py
@@ -4,7 +4,7 @@ from __future__ import with_statement
import keyword
import exceptions
-import __builtin__
+import builtins
from string import Template
comment_header = '''" Auto-generated Vim syntax file for Python.
@@ -39,7 +39,7 @@ exception_names = sorted(exc for exc in dir(exceptions)
# nothing that comes with modules (e.g., __name__), so just exclude anything in
# the 'exceptions' module since we want to ignore exceptions *and* what any
# module would have
-builtin_names = sorted(builtin for builtin in dir(__builtin__)
+builtin_names = sorted(builtin for builtin in dir(builtins)
if builtin not in dir(exceptions))
escapes = (r'+\\[abfnrtv\'"\\]+', r'"\\\o\{1,3}"', r'"\\x\x\{2}"',
diff --git a/Modules/_bsddb.c b/Modules/_bsddb.c
index 0587071..24f2562 100644
--- a/Modules/_bsddb.c
+++ b/Modules/_bsddb.c
@@ -6002,7 +6002,7 @@ PyMODINIT_FUNC init_bsddb(void)
* using one base class. */
PyDict_SetItemString(d, "KeyError", PyExc_KeyError);
{
- PyObject *builtin_mod = PyImport_ImportModule("__builtin__");
+ PyObject *builtin_mod = PyImport_ImportModule("builtins");
PyDict_SetItemString(d, "__builtins__", builtin_mod);
}
PyRun_String("class DBNotFoundError(DBError, KeyError): pass\n"
diff --git a/Modules/_lsprof.c b/Modules/_lsprof.c
index 7e85dcf..1707679 100644
--- a/Modules/_lsprof.c
+++ b/Modules/_lsprof.c
@@ -186,13 +186,13 @@ normalizeUserObj(PyObject *obj)
modname = PyModule_GetName(mod);
if (modname == NULL) {
PyErr_Clear();
- modname = "__builtin__";
+ modname = "builtins";
}
}
else {
- modname = "__builtin__";
+ modname = "builtins";
}
- if (strcmp(modname, "__builtin__") != 0)
+ if (strcmp(modname, "builtins") != 0)
return PyUnicode_FromFormat("<%s.%s>",
modname,
fn->m_ml->ml_name);
diff --git a/Modules/config.c.in b/Modules/config.c.in
index e9c54a9..0531fab 100644
--- a/Modules/config.c.in
+++ b/Modules/config.c.in
@@ -48,7 +48,7 @@ struct _inittab _PyImport_Inittab[] = {
/* These entries are here for sys.builtin_module_names */
{"__main__", NULL},
- {"__builtin__", NULL},
+ {"builtins", NULL},
{"sys", NULL},
/* This lives in gcmodule.c */
diff --git a/Objects/exceptions.c b/Objects/exceptions.c
index e26c350..14e1bfb 100644
--- a/Objects/exceptions.c
+++ b/Objects/exceptions.c
@@ -1849,7 +1849,7 @@ _PyExc_Init(void)
PRE_INIT(UnicodeWarning)
PRE_INIT(BytesWarning)
- bltinmod = PyImport_ImportModule("__builtin__");
+ bltinmod = PyImport_ImportModule("builtins");
if (bltinmod == NULL)
Py_FatalError("exceptions bootstrapping error.");
bdict = PyModule_GetDict(bltinmod);
diff --git a/Objects/listobject.c b/Objects/listobject.c
index ea10abf..01ada08 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -1961,7 +1961,7 @@ is_default_cmp(PyObject *cmpfunc)
module = PyUnicode_AsString(f->m_module);
if (module == NULL)
return 0;
- if (strcmp(module, "__builtin__") != 0)
+ if (strcmp(module, "builtins") != 0)
return 0;
if (strcmp(f->m_ml->ml_name, "cmp") != 0)
return 0;
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index fd6f5ce..99ba799 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -112,7 +112,7 @@ type_module(PyTypeObject *type, void *context)
if (s != NULL)
return PyUnicode_FromStringAndSize(
type->tp_name, (Py_ssize_t)(s - type->tp_name));
- return PyUnicode_FromString("__builtin__");
+ return PyUnicode_FromString("builtins");
}
}
@@ -397,7 +397,7 @@ type_repr(PyTypeObject *type)
else
kind = "type";
- if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "__builtin__"))
+ if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "builtins"))
rtn = PyUnicode_FromFormat("<%s '%U.%U'>", kind, mod, name);
else
rtn = PyUnicode_FromFormat("<%s '%s'>", kind, type->tp_name);
@@ -2455,7 +2455,7 @@ object_repr(PyObject *self)
name = type_name(type, NULL);
if (name == NULL)
return NULL;
- if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "__builtin__"))
+ if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "builtins"))
rtn = PyUnicode_FromFormat("<%U.%U object at %p>", mod, name, self);
else
rtn = PyUnicode_FromFormat("<%s object at %p>",
diff --git a/PC/bdist_wininst/install.c b/PC/bdist_wininst/install.c
index 0ce2371..3f7d774 100644
--- a/PC/bdist_wininst/install.c
+++ b/PC/bdist_wininst/install.c
@@ -654,7 +654,7 @@ static int prepare_script_environment(HINSTANCE hPython)
if (!Py_BuildValue || !PyArg_ParseTuple || !PyErr_Format)
return 1;
- mod = PyImport_ImportModule("__builtin__");
+ mod = PyImport_ImportModule("builtins");
if (mod) {
int i;
g_PyExc_ValueError = PyObject_GetAttrString(mod, "ValueError");
diff --git a/PC/config.c b/PC/config.c
index 63ff2c0..fee254a 100644
--- a/PC/config.c
+++ b/PC/config.c
@@ -143,7 +143,7 @@ struct _inittab _PyImport_Inittab[] = {
/* These entries are here for sys.builtin_module_names */
{"__main__", NULL},
- {"__builtin__", NULL},
+ {"builtins", NULL},
{"sys", NULL},
{"_types", init_types},
diff --git a/PC/os2emx/config.c b/PC/os2emx/config.c
index 3524429..47378fd 100644
--- a/PC/os2emx/config.c
+++ b/PC/os2emx/config.c
@@ -156,7 +156,7 @@ struct _inittab _PyImport_Inittab[] = {
/* These entries are here for sys.builtin_module_names */
{"__main__", NULL},
- {"__builtin__", NULL},
+ {"builtins", NULL},
{"sys", NULL},
/* This lives in gcmodule.c */
diff --git a/PC/os2vacpp/config.c b/PC/os2vacpp/config.c
index 62bb8b2..7be2b0b 100644
--- a/PC/os2vacpp/config.c
+++ b/PC/os2vacpp/config.c
@@ -94,7 +94,7 @@ struct _inittab _PyImport_Inittab[] = {
/* These entries are here for sys.builtin_module_names */
{"__main__", NULL},
- {"__builtin__", NULL},
+ {"builtins", NULL},
{"sys", NULL},
/* Sentinel */
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index fb7e223..053e083 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -1851,7 +1851,7 @@ PyObject *
_PyBuiltin_Init(void)
{
PyObject *mod, *dict, *debug;
- mod = Py_InitModule4("__builtin__", builtin_methods,
+ mod = Py_InitModule4("builtins", builtin_methods,
builtin_doc, (PyObject *)NULL,
PYTHON_API_VERSION);
if (mod == NULL)
@@ -1859,7 +1859,7 @@ _PyBuiltin_Init(void)
dict = PyModule_GetDict(mod);
#ifdef Py_TRACE_REFS
- /* __builtin__ exposes a number of statically allocated objects
+ /* "builtins" exposes a number of statically allocated objects
* that, before this code was added in 2.3, never showed up in
* the list of "all objects" maintained by Py_TRACE_REFS. As a
* result, programs leaking references to None and False (etc)
diff --git a/Python/errors.c b/Python/errors.c
index 1cd5dfd..063187b 100644
--- a/Python/errors.c
+++ b/Python/errors.c
@@ -645,7 +645,7 @@ PyErr_WriteUnraisable(PyObject *obj)
else {
char* modstr = PyUnicode_AsString(moduleName);
if (modstr &&
- strcmp(modstr, "__builtin__") != 0)
+ strcmp(modstr, "builtins") != 0)
{
PyFile_WriteString(modstr, f);
PyFile_WriteString(".", f);
diff --git a/Python/import.c b/Python/import.c
index 1ea9297..419f3e9 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -400,11 +400,11 @@ PyImport_Cleanup(void)
deleted *last* of all, they would come too late in the normal
destruction order. Sigh. */
- value = PyDict_GetItemString(modules, "__builtin__");
+ value = PyDict_GetItemString(modules, "builtins");
if (value != NULL && PyModule_Check(value)) {
dict = PyModule_GetDict(value);
if (Py_VerboseFlag)
- PySys_WriteStderr("# clear __builtin__._\n");
+ PySys_WriteStderr("# clear builtins._\n");
PyDict_SetItemString(dict, "_", Py_None);
}
value = PyDict_GetItemString(modules, "sys");
@@ -436,11 +436,11 @@ PyImport_Cleanup(void)
PyDict_SetItemString(modules, "__main__", Py_None);
}
- /* The special treatment of __builtin__ here is because even
+ /* The special treatment of "builtins" here is because even
when it's not referenced as a module, its dictionary is
referenced by almost every module's __builtins__. Since
deleting a module clears its dictionary (even if there are
- references left to it), we need to delete the __builtin__
+ references left to it), we need to delete the "builtins"
module last. Likewise, we don't delete sys until the very
end because it is implicitly referenced (e.g. by print).
@@ -451,7 +451,7 @@ PyImport_Cleanup(void)
re-imported. */
/* Next, repeatedly delete modules with a reference count of
- one (skipping __builtin__ and sys) and delete them */
+ one (skipping builtins and sys) and delete them */
do {
ndone = 0;
pos = 0;
@@ -460,7 +460,7 @@ PyImport_Cleanup(void)
continue;
if (PyUnicode_Check(key) && PyModule_Check(value)) {
name = PyUnicode_AsString(key);
- if (strcmp(name, "__builtin__") == 0)
+ if (strcmp(name, "builtins") == 0)
continue;
if (strcmp(name, "sys") == 0)
continue;
@@ -474,12 +474,12 @@ PyImport_Cleanup(void)
}
} while (ndone > 0);
- /* Next, delete all modules (still skipping __builtin__ and sys) */
+ /* Next, delete all modules (still skipping builtins and sys) */
pos = 0;
while (PyDict_Next(modules, &pos, &key, &value)) {
if (PyUnicode_Check(key) && PyModule_Check(value)) {
name = PyUnicode_AsString(key);
- if (strcmp(name, "__builtin__") == 0)
+ if (strcmp(name, "builtins") == 0)
continue;
if (strcmp(name, "sys") == 0)
continue;
@@ -490,7 +490,7 @@ PyImport_Cleanup(void)
}
}
- /* Next, delete sys and __builtin__ (in that order) */
+ /* Next, delete sys and builtins (in that order) */
value = PyDict_GetItemString(modules, "sys");
if (value != NULL && PyModule_Check(value)) {
if (Py_VerboseFlag)
@@ -498,12 +498,12 @@ PyImport_Cleanup(void)
_PyModule_Clear(value);
PyDict_SetItemString(modules, "sys", Py_None);
}
- value = PyDict_GetItemString(modules, "__builtin__");
+ value = PyDict_GetItemString(modules, "builtins");
if (value != NULL && PyModule_Check(value)) {
if (Py_VerboseFlag)
- PySys_WriteStderr("# cleanup __builtin__\n");
+ PySys_WriteStderr("# cleanup builtins\n");
_PyModule_Clear(value);
- PyDict_SetItemString(modules, "__builtin__", Py_None);
+ PyDict_SetItemString(modules, "builtins", Py_None);
}
/* Finally, clear and delete the modules directory */
@@ -2491,7 +2491,7 @@ PyImport_Import(PyObject *module_name)
/* No globals -- use standard builtins, and fake globals */
PyErr_Clear();
- builtins = PyImport_ImportModuleLevel("__builtin__",
+ builtins = PyImport_ImportModuleLevel("builtins",
NULL, NULL, NULL, 0);
if (builtins == NULL)
return NULL;
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 08b0d83..d1a062b 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -211,7 +211,7 @@ Py_InitializeEx(int install_sigs)
bimod = _PyBuiltin_Init();
if (bimod == NULL)
- Py_FatalError("Py_Initialize: can't initialize __builtin__");
+ Py_FatalError("Py_Initialize: can't initialize builtins modules");
interp->builtins = PyModule_GetDict(bimod);
if (interp->builtins == NULL)
Py_FatalError("Py_Initialize: can't initialize builtins dict");
@@ -243,7 +243,7 @@ Py_InitializeEx(int install_sigs)
_PyImport_Init();
/* phase 2 of builtins */
- _PyImport_FixupExtension("__builtin__", "__builtin__");
+ _PyImport_FixupExtension("builtins", "builtins");
_PyImportHooks_Init();
@@ -572,7 +572,7 @@ Py_NewInterpreter(void)
interp->modules = PyDict_New();
interp->modules_reloading = PyDict_New();
- bimod = _PyImport_FindExtension("__builtin__", "__builtin__");
+ bimod = _PyImport_FindExtension("builtins", "builtins");
if (bimod != NULL) {
interp->builtins = PyModule_GetDict(bimod);
if (interp->builtins == NULL)
@@ -682,7 +682,7 @@ initmain(void)
Py_FatalError("can't create __main__ module");
d = PyModule_GetDict(m);
if (PyDict_GetItemString(d, "__builtins__") == NULL) {
- PyObject *bimod = PyImport_ImportModule("__builtin__");
+ PyObject *bimod = PyImport_ImportModule("builtins");
if (bimod == NULL ||
PyDict_SetItemString(d, "__builtins__", bimod) != 0)
Py_FatalError("can't add __builtins__ to __main__");
@@ -717,7 +717,7 @@ initsite(void)
}
}
-/* Initialize sys.stdin, stdout, stderr and __builtin__.open */
+/* Initialize sys.stdin, stdout, stderr and builtins.open */
static int
initstdio(void)
{
@@ -739,7 +739,7 @@ initstdio(void)
}
Py_DECREF(m);
- if (!(bimod = PyImport_ImportModule("__builtin__"))) {
+ if (!(bimod = PyImport_ImportModule("builtins"))) {
goto error;
}
@@ -750,7 +750,7 @@ initstdio(void)
goto error;
}
- /* Set __builtin__.open */
+ /* Set builtins.open */
if (PyObject_SetAttrString(bimod, "open", wrapper) == -1) {
goto error;
}
@@ -1362,7 +1362,7 @@ PyErr_Display(PyObject *exception, PyObject *value, PyObject *tb)
}
else {
char* modstr = PyUnicode_AsString(moduleName);
- if (modstr && strcmp(modstr, "__builtin__"))
+ if (modstr && strcmp(modstr, "builtins"))
{
err = PyFile_WriteString(modstr, f);
err += PyFile_WriteString(".", f);
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 6f68e00..e793707 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -72,10 +72,10 @@ sys_displayhook(PyObject *self, PyObject *o)
PyObject *outf;
PyInterpreterState *interp = PyThreadState_GET()->interp;
PyObject *modules = interp->modules;
- PyObject *builtins = PyDict_GetItemString(modules, "__builtin__");
+ PyObject *builtins = PyDict_GetItemString(modules, "builtins");
if (builtins == NULL) {
- PyErr_SetString(PyExc_RuntimeError, "lost __builtin__");
+ PyErr_SetString(PyExc_RuntimeError, "lost builtins module");
return NULL;
}
@@ -106,7 +106,7 @@ sys_displayhook(PyObject *self, PyObject *o)
PyDoc_STRVAR(displayhook_doc,
"displayhook(object) -> None\n"
"\n"
-"Print an object to sys.stdout and also save it in __builtin__.\n"
+"Print an object to sys.stdout and also save it in builtins.\n"
);
static PyObject *
@@ -896,7 +896,7 @@ __excepthook__ -- the original excepthook; don't touch!\n\
\n\
Functions:\n\
\n\
-displayhook() -- print an object to the screen, and save it in __builtin__._\n\
+displayhook() -- print an object to the screen, and save it in builtins._\n\
excepthook() -- print an exception and its traceback to sys.stderr\n\
exc_info() -- return thread-safe information about the current exception\n\
exit() -- exit the interpreter by raising SystemExit\n\
diff --git a/Tools/freeze/makeconfig.py b/Tools/freeze/makeconfig.py
index 0bf8756..e2a181c 100644
--- a/Tools/freeze/makeconfig.py
+++ b/Tools/freeze/makeconfig.py
@@ -3,7 +3,7 @@ import re
# Write the config.c file
-never = ['marshal', '__main__', '__builtin__', 'sys', 'exceptions']
+never = ['marshal', '__main__', 'builtins', 'sys', 'exceptions']
def makeconfig(infp, outfp, modules, with_ifdef=0):
m1 = re.compile('-- ADDMODULE MARKER 1 --')