summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/idlelib/AutoComplete.py7
-rw-r--r--Lib/idlelib/AutoCompleteWindow.py4
-rw-r--r--Lib/idlelib/Bindings.py3
-rw-r--r--Lib/idlelib/CallTips.py4
-rw-r--r--Lib/idlelib/ClassBrowser.py8
-rw-r--r--Lib/idlelib/CodeContext.py2
-rw-r--r--Lib/idlelib/ColorDelegator.py6
-rw-r--r--Lib/idlelib/Debugger.py6
-rw-r--r--Lib/idlelib/EditorWindow.py42
-rw-r--r--Lib/idlelib/FileList.py4
-rw-r--r--Lib/idlelib/FormatParagraph.py2
-rw-r--r--Lib/idlelib/GrepDialog.py2
-rw-r--r--Lib/idlelib/HyperParser.py2
-rw-r--r--Lib/idlelib/IOBinding.py4
-rw-r--r--Lib/idlelib/IdleHistory.py2
-rw-r--r--Lib/idlelib/ObjectBrowser.py2
-rw-r--r--Lib/idlelib/OutputWindow.py4
-rw-r--r--Lib/idlelib/ParenMatch.py4
-rw-r--r--Lib/idlelib/PathBrowser.py6
-rw-r--r--Lib/idlelib/Percolator.py4
-rw-r--r--Lib/idlelib/PyShell.py39
-rw-r--r--Lib/idlelib/RemoteDebugger.py4
-rw-r--r--Lib/idlelib/RemoteObjectBrowser.py2
-rw-r--r--Lib/idlelib/ReplaceDialog.py5
-rw-r--r--Lib/idlelib/ScriptBinding.py4
-rw-r--r--Lib/idlelib/SearchDialog.py4
-rw-r--r--Lib/idlelib/StackViewer.py4
-rw-r--r--Lib/idlelib/TreeWidget.py6
-rw-r--r--Lib/idlelib/UndoDelegator.py5
-rw-r--r--Lib/idlelib/ZoomHeight.py3
-rw-r--r--Lib/idlelib/aboutDialog.py7
-rw-r--r--Lib/idlelib/configDialog.py12
-rw-r--r--Lib/idlelib/configHandler.py5
-rw-r--r--Lib/idlelib/idle.py2
-rw-r--r--Lib/idlelib/idle.pyw2
-rw-r--r--Lib/idlelib/macosxSupport.py12
-rw-r--r--Lib/idlelib/run.py14
-rw-r--r--Lib/test/test_asyncore.py14
-rw-r--r--Lib/test/test_unicode.py7
39 files changed, 136 insertions, 133 deletions
diff --git a/Lib/idlelib/AutoComplete.py b/Lib/idlelib/AutoComplete.py
index 7085386..72f221c 100644
--- a/Lib/idlelib/AutoComplete.py
+++ b/Lib/idlelib/AutoComplete.py
@@ -7,10 +7,9 @@ import os
import sys
import string
-from configHandler import idleConf
-
-import AutoCompleteWindow
-from HyperParser import HyperParser
+from .configHandler import idleConf
+from . import AutoCompleteWindow
+from .HyperParser import HyperParser
import __main__
diff --git a/Lib/idlelib/AutoCompleteWindow.py b/Lib/idlelib/AutoCompleteWindow.py
index 56433cd..20becaa 100644
--- a/Lib/idlelib/AutoCompleteWindow.py
+++ b/Lib/idlelib/AutoCompleteWindow.py
@@ -2,8 +2,8 @@
An auto-completion window for IDLE, used by the AutoComplete extension
"""
from Tkinter import *
-from MultiCall import MC_SHIFT
-import AutoComplete
+from .MultiCall import MC_SHIFT
+import idlelib.AutoComplete
HIDE_VIRTUAL_EVENT_NAME = "<<autocompletewindow-hide>>"
HIDE_SEQUENCES = ("<FocusOut>", "<ButtonPress>")
diff --git a/Lib/idlelib/Bindings.py b/Lib/idlelib/Bindings.py
index a3c9fc4..26f4497 100644
--- a/Lib/idlelib/Bindings.py
+++ b/Lib/idlelib/Bindings.py
@@ -9,7 +9,7 @@ windows.
"""
import sys
-from configHandler import idleConf
+from .configHandler import idleConf
menudefs = [
# underscore prefixes character to underscore
@@ -80,7 +80,6 @@ menudefs = [
]),
]
-import sys
if sys.platform == 'darwin' and '.app' in sys.executable:
# Running as a proper MacOS application bundle. This block restructures
# the menus a little to make them conform better to the HIG.
diff --git a/Lib/idlelib/CallTips.py b/Lib/idlelib/CallTips.py
index 6f81af4..235e199 100644
--- a/Lib/idlelib/CallTips.py
+++ b/Lib/idlelib/CallTips.py
@@ -9,8 +9,8 @@ import re
import sys
import types
-import CallTipWindow
-from HyperParser import HyperParser
+from . import CallTipWindow
+from .HyperParser import HyperParser
import __main__
diff --git a/Lib/idlelib/ClassBrowser.py b/Lib/idlelib/ClassBrowser.py
index d3f9048..edda0ed 100644
--- a/Lib/idlelib/ClassBrowser.py
+++ b/Lib/idlelib/ClassBrowser.py
@@ -14,10 +14,10 @@ import os
import sys
import pyclbr
-import PyShell
-from WindowList import ListedToplevel
-from TreeWidget import TreeNode, TreeItem, ScrolledCanvas
-from configHandler import idleConf
+from . import PyShell
+from .WindowList import ListedToplevel
+from .TreeWidget import TreeNode, TreeItem, ScrolledCanvas
+from .configHandler import idleConf
class ClassBrowser:
diff --git a/Lib/idlelib/CodeContext.py b/Lib/idlelib/CodeContext.py
index 2037d6f..065be0f 100644
--- a/Lib/idlelib/CodeContext.py
+++ b/Lib/idlelib/CodeContext.py
@@ -11,9 +11,9 @@ not open blocks are not shown in the context hints pane.
"""
import Tkinter
from Tkconstants import TOP, LEFT, X, W, SUNKEN
-from configHandler import idleConf
import re
from sys import maxint as INFINITY
+from .configHandler import idleConf
BLOCKOPENERS = set(["class", "def", "elif", "else", "except", "finally", "for",
"if", "try", "while", "with"])
diff --git a/Lib/idlelib/ColorDelegator.py b/Lib/idlelib/ColorDelegator.py
index 5328d41..2b1c870 100644
--- a/Lib/idlelib/ColorDelegator.py
+++ b/Lib/idlelib/ColorDelegator.py
@@ -3,8 +3,8 @@ import re
import keyword
import __builtin__
from Tkinter import *
-from Delegator import Delegator
-from configHandler import idleConf
+from .Delegator import Delegator
+from .configHandler import idleConf
DEBUG = False
@@ -248,7 +248,7 @@ class ColorDelegator(Delegator):
self.tag_remove(tag, "1.0", "end")
def main():
- from Percolator import Percolator
+ from .Percolator import Percolator
root = Tk()
root.wm_protocol("WM_DELETE_WINDOW", root.quit)
text = Text(background="white")
diff --git a/Lib/idlelib/Debugger.py b/Lib/idlelib/Debugger.py
index 3dbe23d..df51c45 100644
--- a/Lib/idlelib/Debugger.py
+++ b/Lib/idlelib/Debugger.py
@@ -2,9 +2,9 @@ import os
import bdb
import types
from Tkinter import *
-from WindowList import ListedToplevel
-from ScrolledList import ScrolledList
-import macosxSupport
+from .WindowList import ListedToplevel
+from .ScrolledList import ScrolledList
+from . import macosxSupport
class Idb(bdb.Bdb):
diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
index 7e75a6c..501ae0f 100644
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -6,18 +6,19 @@ from itertools import count
from Tkinter import *
import tkSimpleDialog
import tkMessageBox
-from MultiCall import MultiCallCreator
-
+import traceback
import webbrowser
-import idlever
-import WindowList
-import SearchDialog
-import GrepDialog
-import ReplaceDialog
-import PyParse
-from configHandler import idleConf
-import aboutDialog, textView, configDialog
-import macosxSupport
+
+from .MultiCall import MultiCallCreator
+from . import idlever
+from . import WindowList
+from . import SearchDialog
+from . import GrepDialog
+from . import ReplaceDialog
+from . import PyParse
+from .configHandler import idleConf
+from . import aboutDialog, textView, configDialog
+from . import macosxSupport
# The default tab setting for a Text widget, in average-width characters.
TK_TABWIDTH_DEFAULT = 8
@@ -40,13 +41,13 @@ def _find_module(fullname, path=None):
return file, filename, descr
class EditorWindow(object):
- from Percolator import Percolator
- from ColorDelegator import ColorDelegator
- from UndoDelegator import UndoDelegator
- from IOBinding import IOBinding, filesystemencoding, encoding
- import Bindings
+ from .Percolator import Percolator
+ from .ColorDelegator import ColorDelegator
+ from .UndoDelegator import UndoDelegator
+ from .IOBinding import IOBinding, filesystemencoding, encoding
+ from . import Bindings
from Tkinter import Toplevel
- from MultiStatusBar import MultiStatusBar
+ from .MultiStatusBar import MultiStatusBar
help_url = None
@@ -530,11 +531,11 @@ class EditorWindow(object):
return None
head, tail = os.path.split(filename)
base, ext = os.path.splitext(tail)
- import ClassBrowser
+ from . import ClassBrowser
ClassBrowser.ClassBrowser(self.flist, base, [head])
def open_path_browser(self, event=None):
- import PathBrowser
+ from . import PathBrowser
PathBrowser.PathBrowser(self.flist)
def gotoline(self, lineno):
@@ -860,7 +861,6 @@ class EditorWindow(object):
self.load_extension(name)
except:
print("Failed to load extension", repr(name))
- import traceback
traceback.print_exc()
def get_standard_extension_names(self):
@@ -871,7 +871,7 @@ class EditorWindow(object):
mod = __import__(name, globals(), locals(), [])
except ImportError:
print("\nFailed to import extension: ", name)
- return
+ raise
cls = getattr(mod, name)
keydefs = idleConf.GetExtensionBindings(name)
if hasattr(cls, "menudefs"):
diff --git a/Lib/idlelib/FileList.py b/Lib/idlelib/FileList.py
index 860dbae..7e1d919 100644
--- a/Lib/idlelib/FileList.py
+++ b/Lib/idlelib/FileList.py
@@ -5,7 +5,7 @@ import tkMessageBox
class FileList:
- from EditorWindow import EditorWindow # class variable, may be overridden
+ from .EditorWindow import EditorWindow # class variable, may be overridden
# e.g. by PyShellFileList
def __init__(self, root):
@@ -106,7 +106,7 @@ class FileList:
def _test():
- from EditorWindow import fixwordbreaks
+ from .EditorWindow import fixwordbreaks
import sys
root = Tk()
fixwordbreaks(root)
diff --git a/Lib/idlelib/FormatParagraph.py b/Lib/idlelib/FormatParagraph.py
index ed9f28d..57868f1 100644
--- a/Lib/idlelib/FormatParagraph.py
+++ b/Lib/idlelib/FormatParagraph.py
@@ -15,7 +15,7 @@
# * Fancy comments, like this bulleted list, arent handled :-)
import re
-from configHandler import idleConf
+from .configHandler import idleConf
class FormatParagraph:
diff --git a/Lib/idlelib/GrepDialog.py b/Lib/idlelib/GrepDialog.py
index c96fada..db3220a 100644
--- a/Lib/idlelib/GrepDialog.py
+++ b/Lib/idlelib/GrepDialog.py
@@ -63,7 +63,7 @@ class GrepDialog(SearchDialogBase):
if not path:
self.top.bell()
return
- from OutputWindow import OutputWindow
+ from .OutputWindow import OutputWindow
save = sys.stdout
try:
sys.stdout = OutputWindow(self.flist)
diff --git a/Lib/idlelib/HyperParser.py b/Lib/idlelib/HyperParser.py
index 31f46b1..409e3c4 100644
--- a/Lib/idlelib/HyperParser.py
+++ b/Lib/idlelib/HyperParser.py
@@ -10,7 +10,7 @@ structure of code, used by extensions to help the user.
import string
import keyword
-import PyParse
+from . import PyParse
class HyperParser:
diff --git a/Lib/idlelib/IOBinding.py b/Lib/idlelib/IOBinding.py
index 006e94b..d749788 100644
--- a/Lib/idlelib/IOBinding.py
+++ b/Lib/idlelib/IOBinding.py
@@ -14,9 +14,9 @@ import tkFileDialog
import tkMessageBox
import re
from Tkinter import *
-from SimpleDialog import SimpleDialog
+from .SimpleDialog import SimpleDialog
-from configHandler import idleConf
+from .configHandler import idleConf
try:
from codecs import BOM_UTF8
diff --git a/Lib/idlelib/IdleHistory.py b/Lib/idlelib/IdleHistory.py
index 960242f..8766ade 100644
--- a/Lib/idlelib/IdleHistory.py
+++ b/Lib/idlelib/IdleHistory.py
@@ -1,4 +1,4 @@
-from configHandler import idleConf
+from .configHandler import idleConf
class History:
diff --git a/Lib/idlelib/ObjectBrowser.py b/Lib/idlelib/ObjectBrowser.py
index 0976d91..ad31c23 100644
--- a/Lib/idlelib/ObjectBrowser.py
+++ b/Lib/idlelib/ObjectBrowser.py
@@ -9,7 +9,7 @@
# XXX TO DO:
# - for classes/modules, add "open source" to object browser
-from TreeWidget import TreeItem, TreeNode, ScrolledCanvas
+from .TreeWidget import TreeItem, TreeNode, ScrolledCanvas
from repr import Repr
diff --git a/Lib/idlelib/OutputWindow.py b/Lib/idlelib/OutputWindow.py
index ae795e1..7991e18 100644
--- a/Lib/idlelib/OutputWindow.py
+++ b/Lib/idlelib/OutputWindow.py
@@ -1,8 +1,8 @@
from Tkinter import *
-from EditorWindow import EditorWindow
+from .EditorWindow import EditorWindow
import re
import tkMessageBox
-import IOBinding
+from . import IOBinding
class OutputWindow(EditorWindow):
diff --git a/Lib/idlelib/ParenMatch.py b/Lib/idlelib/ParenMatch.py
index 250ae8b..6f56827 100644
--- a/Lib/idlelib/ParenMatch.py
+++ b/Lib/idlelib/ParenMatch.py
@@ -5,8 +5,8 @@ paren. Paren here is used generically; the matching applies to
parentheses, square brackets, and curly braces.
"""
-from HyperParser import HyperParser
-from configHandler import idleConf
+from .HyperParser import HyperParser
+from .configHandler import idleConf
_openers = {')':'(',']':'[','}':'{'}
CHECK_DELAY = 100 # miliseconds
diff --git a/Lib/idlelib/PathBrowser.py b/Lib/idlelib/PathBrowser.py
index 8c73587..65efb48 100644
--- a/Lib/idlelib/PathBrowser.py
+++ b/Lib/idlelib/PathBrowser.py
@@ -2,8 +2,8 @@ import os
import sys
import imp
-from TreeWidget import TreeItem
-from ClassBrowser import ClassBrowser, ModuleBrowserTreeItem
+from .TreeWidget import TreeItem
+from .ClassBrowser import ClassBrowser, ModuleBrowserTreeItem
class PathBrowser(ClassBrowser):
@@ -86,7 +86,7 @@ class DirBrowserTreeItem(TreeItem):
return sorted
def main():
- import PyShell
+ from . import PyShell
PathBrowser(PyShell.flist)
if sys.stdin is sys.__stdin__:
mainloop()
diff --git a/Lib/idlelib/Percolator.py b/Lib/idlelib/Percolator.py
index a0b1303..22b6288 100644
--- a/Lib/idlelib/Percolator.py
+++ b/Lib/idlelib/Percolator.py
@@ -1,5 +1,5 @@
-from WidgetRedirector import WidgetRedirector
-from Delegator import Delegator
+from .WidgetRedirector import WidgetRedirector
+from .Delegator import Delegator
class Percolator:
diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py
index f11e609..567994e 100644
--- a/Lib/idlelib/PyShell.py
+++ b/Lib/idlelib/PyShell.py
@@ -11,7 +11,6 @@ import time
import threading
import traceback
import types
-import macosxSupport
import linecache
from code import InteractiveInterpreter
@@ -24,17 +23,17 @@ except ImportError:
sys.exit(1)
import tkMessageBox
-from EditorWindow import EditorWindow, fixwordbreaks
-from FileList import FileList
-from ColorDelegator import ColorDelegator
-from UndoDelegator import UndoDelegator
-from OutputWindow import OutputWindow
-from configHandler import idleConf
-import idlever
-
-import rpc
-import Debugger
-import RemoteDebugger
+from .EditorWindow import EditorWindow, fixwordbreaks
+from .FileList import FileList
+from .ColorDelegator import ColorDelegator
+from .UndoDelegator import UndoDelegator
+from .OutputWindow import OutputWindow
+from .configHandler import idleConf
+from . import idlever
+from . import rpc
+from . import Debugger
+from . import RemoteDebugger
+from . import macosxSupport
IDENTCHARS = string.ascii_letters + string.digits + "_"
LOCALHOST = '127.0.0.1'
@@ -542,13 +541,13 @@ class ModifiedInterpreter(InteractiveInterpreter):
return
def remote_stack_viewer(self):
- import RemoteObjectBrowser
+ from . import RemoteObjectBrowser
oid = self.rpcclt.remotequeue("exec", "stackviewer", ("flist",), {})
if oid is None:
self.tkconsole.root.bell()
return
item = RemoteObjectBrowser.StubObjectTreeItem(self.rpcclt, oid)
- from TreeWidget import ScrolledCanvas, TreeNode
+ from .TreeWidget import ScrolledCanvas, TreeNode
top = Toplevel(self.tkconsole.root)
theme = idleConf.GetOption('main','Theme','name')
background = idleConf.GetHighlight(theme, 'normal')['background']
@@ -588,7 +587,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
self.save_warnings_filters = warnings.filters[:]
warnings.filterwarnings(action="error", category=SyntaxWarning)
if isinstance(source, types.UnicodeType):
- import IOBinding
+ from . import IOBinding
try:
source = source.encode(IOBinding.encoding)
except UnicodeError:
@@ -677,7 +676,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
def checklinecache(self):
c = linecache.cache
- for key in c.keys():
+ for key in list(c.keys()):
if key[:1] + key[-1:] != "<>":
del c[key]
@@ -798,7 +797,7 @@ class PyShell(OutputWindow):
# New classes
- from IdleHistory import History
+ from .IdleHistory import History
def __init__(self, flist=None):
if use_subprocess:
@@ -837,7 +836,7 @@ class PyShell(OutputWindow):
self.save_stdout = sys.stdout
self.save_stderr = sys.stderr
self.save_stdin = sys.stdin
- import IOBinding
+ from . import IOBinding
self.stdout = PseudoFile(self, "stdout", IOBinding.encoding)
self.stderr = PseudoFile(self, "stderr", IOBinding.encoding)
self.console = PseudoFile(self, "console", IOBinding.encoding)
@@ -1007,7 +1006,7 @@ class PyShell(OutputWindow):
if len(line) == 0: # may be EOF if we quit our mainloop with Ctrl-C
line = "\n"
if isinstance(line, str):
- import IOBinding
+ from . import IOBinding
try:
line = line.encode(IOBinding.encoding)
except UnicodeError:
@@ -1195,7 +1194,7 @@ class PyShell(OutputWindow):
"(sys.last_traceback is not defined)",
master=self.text)
return
- from StackViewer import StackBrowser
+ from .StackViewer import StackBrowser
sv = StackBrowser(self.root, self.flist)
def view_restart_mark(self, event=None):
diff --git a/Lib/idlelib/RemoteDebugger.py b/Lib/idlelib/RemoteDebugger.py
index 0422cce..b2d5921 100644
--- a/Lib/idlelib/RemoteDebugger.py
+++ b/Lib/idlelib/RemoteDebugger.py
@@ -22,8 +22,8 @@ barrier, in particular frame and traceback objects.
import sys
import types
-import rpc
-import Debugger
+from . import rpc
+from . import Debugger
debugging = 0
diff --git a/Lib/idlelib/RemoteObjectBrowser.py b/Lib/idlelib/RemoteObjectBrowser.py
index 6ba3391..bcb9a2e 100644
--- a/Lib/idlelib/RemoteObjectBrowser.py
+++ b/Lib/idlelib/RemoteObjectBrowser.py
@@ -1,4 +1,4 @@
-import rpc
+from . import rpc
def remote_object_tree_item(item):
wrapper = WrappedObjectTreeItem(item)
diff --git a/Lib/idlelib/ReplaceDialog.py b/Lib/idlelib/ReplaceDialog.py
index c8eb1c8..df7bed8 100644
--- a/Lib/idlelib/ReplaceDialog.py
+++ b/Lib/idlelib/ReplaceDialog.py
@@ -1,6 +1,7 @@
from Tkinter import *
-import SearchEngine
-from SearchDialogBase import SearchDialogBase
+
+from . import SearchEngine
+from .SearchDialogBase import SearchDialogBase
def replace(text):
root = text._root()
diff --git a/Lib/idlelib/ScriptBinding.py b/Lib/idlelib/ScriptBinding.py
index a83f715..c8ae60b 100644
--- a/Lib/idlelib/ScriptBinding.py
+++ b/Lib/idlelib/ScriptBinding.py
@@ -23,9 +23,9 @@ import string
import tabnanny
import tokenize
import tkMessageBox
-import PyShell
+from . import PyShell
-from configHandler import idleConf
+from .configHandler import idleConf
IDENTCHARS = string.ascii_letters + string.digits + "_"
diff --git a/Lib/idlelib/SearchDialog.py b/Lib/idlelib/SearchDialog.py
index d7124d6..87c34c1 100644
--- a/Lib/idlelib/SearchDialog.py
+++ b/Lib/idlelib/SearchDialog.py
@@ -1,7 +1,7 @@
from Tkinter import *
-import SearchEngine
-from SearchDialogBase import SearchDialogBase
+from . import SearchEngine
+from .SearchDialogBase import SearchDialogBase
def _setup(text):
root = text._root()
diff --git a/Lib/idlelib/StackViewer.py b/Lib/idlelib/StackViewer.py
index 79324ae..8a1cace 100644
--- a/Lib/idlelib/StackViewer.py
+++ b/Lib/idlelib/StackViewer.py
@@ -2,8 +2,8 @@ import os
import sys
import linecache
-from TreeWidget import TreeNode, TreeItem, ScrolledCanvas
-from ObjectBrowser import ObjectTreeItem, make_objecttreeitem
+from .TreeWidget import TreeNode, TreeItem, ScrolledCanvas
+from .ObjectBrowser import ObjectTreeItem, make_objecttreeitem
def StackBrowser(root, flist=None, tb=None, top=None):
if top is None:
diff --git a/Lib/idlelib/TreeWidget.py b/Lib/idlelib/TreeWidget.py
index 1d777df..8210117 100644
--- a/Lib/idlelib/TreeWidget.py
+++ b/Lib/idlelib/TreeWidget.py
@@ -19,8 +19,8 @@ import sys
from Tkinter import *
import imp
-import ZoomHeight
-from configHandler import idleConf
+from . import ZoomHeight
+from .configHandler import idleConf
ICONDIR = "Icons"
@@ -453,7 +453,7 @@ class ScrolledCanvas:
# Testing functions
def test():
- import PyShell
+ from . import PyShell
root = Toplevel(PyShell.root)
root.configure(bd=0, bg="yellow")
root.focus_set()
diff --git a/Lib/idlelib/UndoDelegator.py b/Lib/idlelib/UndoDelegator.py
index 0f95b3b..2b836a8 100644
--- a/Lib/idlelib/UndoDelegator.py
+++ b/Lib/idlelib/UndoDelegator.py
@@ -1,7 +1,8 @@
import sys
import string
from Tkinter import *
-from Delegator import Delegator
+
+from .Delegator import Delegator
#$ event <<redo>>
#$ win <Control-y>
@@ -337,7 +338,7 @@ class CommandSequence(Command):
return self.depth
def main():
- from Percolator import Percolator
+ from .Percolator import Percolator
root = Tk()
root.wm_protocol("WM_DELETE_WINDOW", root.quit)
text = Text()
diff --git a/Lib/idlelib/ZoomHeight.py b/Lib/idlelib/ZoomHeight.py
index 83ca3a6..5627a0d 100644
--- a/Lib/idlelib/ZoomHeight.py
+++ b/Lib/idlelib/ZoomHeight.py
@@ -2,7 +2,8 @@
import re
import sys
-import macosxSupport
+
+from . import macosxSupport
class ZoomHeight:
diff --git a/Lib/idlelib/aboutDialog.py b/Lib/idlelib/aboutDialog.py
index afdafd2..3e67078 100644
--- a/Lib/idlelib/aboutDialog.py
+++ b/Lib/idlelib/aboutDialog.py
@@ -4,8 +4,9 @@
from Tkinter import *
import os
-import textView
-import idlever
+
+from . import textView
+from . import idlever
class AboutDialog(Toplevel):
"""Modal about dialog for idle
@@ -157,7 +158,7 @@ if __name__ == '__main__':
# test the dialog
root = Tk()
def run():
- import aboutDialog
+ from . import aboutDialog
aboutDialog.AboutDialog(root, 'About')
Button(root, text='Dialog', command=run).pack()
root.mainloop()
diff --git a/Lib/idlelib/configDialog.py b/Lib/idlelib/configDialog.py
index eadb69d..b3e7b3e 100644
--- a/Lib/idlelib/configDialog.py
+++ b/Lib/idlelib/configDialog.py
@@ -13,12 +13,12 @@ from Tkinter import *
import tkMessageBox, tkColorChooser, tkFont
import copy
-from configHandler import idleConf
-from dynOptionMenuWidget import DynOptionMenu
-from tabpage import TabPageSet
-from keybindingDialog import GetKeysDialog
-from configSectionNameDialog import GetCfgSectionNameDialog
-from configHelpSourceEdit import GetHelpSourceDialog
+from .configHandler import idleConf
+from .dynOptionMenuWidget import DynOptionMenu
+from .tabpage import TabPageSet
+from .keybindingDialog import GetKeysDialog
+from .configSectionNameDialog import GetCfgSectionNameDialog
+from .configHelpSourceEdit import GetHelpSourceDialog
class ConfigDialog(Toplevel):
diff --git a/Lib/idlelib/configHandler.py b/Lib/idlelib/configHandler.py
index 963cf95..98d6be7 100644
--- a/Lib/idlelib/configHandler.py
+++ b/Lib/idlelib/configHandler.py
@@ -19,8 +19,9 @@ configuration problem notification and resolution.
"""
import os
import sys
-import macosxSupport
-from ConfigParser import ConfigParser, NoOptionError, NoSectionError
+
+from . import macosxSupport
+from .ConfigParser import ConfigParser, NoOptionError, NoSectionError
class InvalidConfigType(Exception): pass
class InvalidConfigSet(Exception): pass
diff --git a/Lib/idlelib/idle.py b/Lib/idlelib/idle.py
index 537dd5a..0db5fd4 100644
--- a/Lib/idlelib/idle.py
+++ b/Lib/idlelib/idle.py
@@ -3,7 +3,7 @@ try:
except ImportError:
# IDLE is not installed, but maybe PyShell is on sys.path:
try:
- import PyShell
+ from . import PyShell
except ImportError:
raise
else:
diff --git a/Lib/idlelib/idle.pyw b/Lib/idlelib/idle.pyw
index 537dd5a..0db5fd4 100644
--- a/Lib/idlelib/idle.pyw
+++ b/Lib/idlelib/idle.pyw
@@ -3,7 +3,7 @@ try:
except ImportError:
# IDLE is not installed, but maybe PyShell is on sys.path:
try:
- import PyShell
+ from . import PyShell
except ImportError:
raise
else:
diff --git a/Lib/idlelib/macosxSupport.py b/Lib/idlelib/macosxSupport.py
index 222abfc..14c5bd8 100644
--- a/Lib/idlelib/macosxSupport.py
+++ b/Lib/idlelib/macosxSupport.py
@@ -47,10 +47,10 @@ def overrideRootMenu(root, flist):
# Due to a (mis-)feature of TkAqua the user will also see an empty Help
# menu.
from Tkinter import Menu, Text, Text
- from EditorWindow import prepstr, get_accelerator
- import Bindings
- import WindowList
- from MultiCall import MultiCallCreator
+ from .EditorWindow import prepstr, get_accelerator
+ from . import Bindings
+ from . import WindowList
+ from .MultiCall import MultiCallCreator
menubar = Menu(root)
root.configure(menu=menubar)
@@ -73,11 +73,11 @@ def overrideRootMenu(root, flist):
menubar.add_cascade(label='IDLE', menu=menu)
def about_dialog(event=None):
- import aboutDialog
+ from . import aboutDialog
aboutDialog.AboutDialog(root, 'About IDLE')
def config_dialog(event=None):
- import configDialog
+ from . import configDialog
configDialog.ConfigDialog(root, 'Settings')
diff --git a/Lib/idlelib/run.py b/Lib/idlelib/run.py
index 8a0b926..614875a 100644
--- a/Lib/idlelib/run.py
+++ b/Lib/idlelib/run.py
@@ -8,13 +8,13 @@ import thread
import threading
import Queue
-import CallTips
-import AutoComplete
+from . import CallTips
+from . import AutoComplete
-import RemoteDebugger
-import RemoteObjectBrowser
-import StackViewer
-import rpc
+from . import RemoteDebugger
+from . import RemoteObjectBrowser
+from . import StackViewer
+from . import rpc
import __main__
@@ -243,7 +243,7 @@ class MyHandler(rpc.RPCHandler):
sys.stdin = self.console = self.get_remote_proxy("stdin")
sys.stdout = self.get_remote_proxy("stdout")
sys.stderr = self.get_remote_proxy("stderr")
- import IOBinding
+ from . import IOBinding
sys.stdin.encoding = sys.stdout.encoding = \
sys.stderr.encoding = IOBinding.encoding
self.interp = self.get_remote_proxy("interp")
diff --git a/Lib/test/test_asyncore.py b/Lib/test/test_asyncore.py
index fca5b29..6f848a7 100644
--- a/Lib/test/test_asyncore.py
+++ b/Lib/test/test_asyncore.py
@@ -65,12 +65,14 @@ def capture_server(evt, buf):
else:
n = 200
while n > 0:
- data = conn.recv(10)
- assert isinstance(data, bytes)
- # keep everything except for the newline terminator
- buf.write(data.replace(b'\n', b''))
- if b'\n' in data:
- break
+ r, w, e = select.select([conn], [], [])
+ if r:
+ data = conn.recv(10)
+ assert isinstance(data, bytes)
+ # keep everything except for the newline terminator
+ buf.write(data.replace(b'\n', b''))
+ if b'\n' in data:
+ break
n -= 1
time.sleep(0.01)
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index f09721a..3032f79 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -55,10 +55,9 @@ class UnicodeTest(
def test_literals(self):
self.assertEqual('\xff', '\u00ff')
self.assertEqual('\uffff', '\U0000ffff')
- self.assertRaises((UnicodeError, SyntaxError), eval, '\'\\Ufffffffe\'')
- self.assertRaises((UnicodeError, SyntaxError), eval, '\'\\Uffffffff\'')
- self.assertRaises((UnicodeError, SyntaxError),
- eval, '\'\\U%08x\'' % 0x110000)
+ self.assertRaises(SyntaxError, eval, '\'\\Ufffffffe\'')
+ self.assertRaises(SyntaxError, eval, '\'\\Uffffffff\'')
+ self.assertRaises(SyntaxError, eval, '\'\\U%08x\'' % 0x110000)
def test_repr(self):
if not sys.platform.startswith('java'):