diff -r 72889bf8531d Lib/_strptime.py --- a/Lib/_strptime.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/_strptime.py Wed Mar 19 11:43:41 2014 +0100 @@ -14,7 +14,7 @@ import time import locale import calendar from re import compile as re_compile -from re import IGNORECASE, ASCII +from re import IGNORECASE from re import escape as re_escape from datetime import (date as datetime_date, timedelta as datetime_timedelta, diff -r 72889bf8531d Lib/asynchat.py --- a/Lib/asynchat.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/asynchat.py Wed Mar 19 11:43:41 2014 +0100 @@ -45,7 +45,6 @@ command will be accumulated (using your method) up to the terminator, and then control will be returned to you - by calling your self.found_terminator() method. """ -import socket import asyncore from collections import deque diff -r 72889bf8531d Lib/compileall.py --- a/Lib/compileall.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/compileall.py Wed Mar 19 11:43:41 2014 +0100 @@ -12,7 +12,6 @@ See module py_compile for details of the """ import os import sys -import errno import importlib.util import py_compile import struct diff -r 72889bf8531d Lib/ctypes/util.py --- a/Lib/ctypes/util.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/ctypes/util.py Wed Mar 19 11:43:41 2014 +0100 @@ -85,7 +85,7 @@ if os.name == "posix" and sys.platform = elif os.name == "posix": # Andreas Degert's find functions, using gcc, /sbin/ldconfig, objdump - import re, tempfile, errno + import re, tempfile def _findLib_gcc(name): expr = r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name) diff -r 72889bf8531d Lib/decimal.py --- a/Lib/decimal.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/decimal.py Wed Mar 19 11:43:41 2014 +0100 @@ -142,7 +142,6 @@ 1 # See http://speleotrove.com/decimal/ __libmpdec_version__ = "2.4.0" # compatible libmpdec version -import copy as _copy import math as _math import numbers as _numbers import sys diff -r 72889bf8531d Lib/difflib.py --- a/Lib/difflib.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/difflib.py Wed Mar 19 11:43:41 2014 +0100 @@ -30,7 +30,6 @@ Class HtmlDiff: 'Differ','IS_CHARACTER_JUNK', 'IS_LINE_JUNK', 'context_diff', 'unified_diff', 'HtmlDiff', 'Match'] -import warnings import heapq from collections import namedtuple as _namedtuple diff -r 72889bf8531d Lib/email/_header_value_parser.py --- a/Lib/email/_header_value_parser.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/_header_value_parser.py Wed Mar 19 11:43:41 2014 +0100 @@ -70,7 +70,7 @@ XXX: provide complete list of token type import re import urllib # For urllib.parse.unquote from string import hexdigits -from collections import namedtuple, OrderedDict +from collections import OrderedDict from email import _encoded_words as _ew from email import errors from email import utils diff -r 72889bf8531d Lib/email/generator.py --- a/Lib/email/generator.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/generator.py Wed Mar 19 11:43:41 2014 +0100 @@ -10,14 +10,10 @@ import re import sys import time import random -import warnings from copy import deepcopy from io import StringIO, BytesIO -from email._policybase import compat32 -from email.header import Header from email.utils import _has_surrogates -import email.charset as _charset UNDERSCORE = '_' NL = '\n' # XXX: no longer used by the code below. diff -r 72889bf8531d Lib/email/header.py --- a/Lib/email/header.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/header.py Wed Mar 19 11:43:41 2014 +0100 @@ -100,7 +100,6 @@ def decode_header(header): words.append((encoded, encoding, charset)) # Now loop over words and remove words that consist of whitespace # between two encoded strings. - import sys droplist = [] for n, w in enumerate(words): if n>1 and w[1] and words[n-2][1] and words[n-1][0].isspace(): @@ -362,7 +361,6 @@ class Header: for string, charset in self._chunks: if hasspace is not None: hasspace = string and self._nonctext(string[0]) - import sys if lastcs not in (None, 'us-ascii'): if not hasspace or charset not in (None, 'us-ascii'): formatter.add_transition() diff -r 72889bf8531d Lib/email/message.py --- a/Lib/email/message.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/message.py Wed Mar 19 11:43:41 2014 +0100 @@ -9,6 +9,7 @@ import re import uu from io import BytesIO, StringIO +from quopri import decodestring as _qdecode # Intrapackage imports from email import utils @@ -278,7 +279,7 @@ class Message: if not decode: return payload if cte == 'quoted-printable': - return utils._qdecode(bpayload) + return _qdecode(bpayload) elif cte == 'base64': # XXX: this is a bit of a hack; decode_b should probably be factored # out somewhere, but I haven't figured out where yet. diff -r 72889bf8531d Lib/email/mime/text.py --- a/Lib/email/mime/text.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/mime/text.py Wed Mar 19 11:43:41 2014 +0100 @@ -6,7 +6,6 @@ __all__ = ['MIMEText'] -from email.encoders import encode_7or8bit from email.mime.nonmultipart import MIMENonMultipart diff -r 72889bf8531d Lib/email/parser.py --- a/Lib/email/parser.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/parser.py Wed Mar 19 11:43:41 2014 +0100 @@ -7,11 +7,9 @@ __all__ = ['Parser', 'HeaderParser', 'BytesParser', 'BytesHeaderParser', 'FeedParser', 'BytesFeedParser'] -import warnings from io import StringIO, TextIOWrapper from email.feedparser import FeedParser, BytesFeedParser -from email.message import Message from email._policybase import compat32 diff -r 72889bf8531d Lib/email/quoprimime.py --- a/Lib/email/quoprimime.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/quoprimime.py Wed Mar 19 11:43:41 2014 +0100 @@ -40,7 +40,6 @@ wrapping issues, use the email.header mo ] import re -import io from string import ascii_letters, digits, hexdigits diff -r 72889bf8531d Lib/email/utils.py --- a/Lib/email/utils.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/email/utils.py Wed Mar 19 11:43:41 2014 +0100 @@ -25,13 +25,10 @@ import os import re import time -import base64 import random import socket import datetime import urllib.parse -import warnings -from io import StringIO from email._parseaddr import quote from email._parseaddr import AddressList as _AddressList @@ -39,10 +36,7 @@ from email._parseaddr import mktime_tz from email._parseaddr import parsedate, parsedate_tz, _parsedate_tz -from quopri import decodestring as _qdecode - # Intrapackage imports -from email.encoders import _bencode, _qencode from email.charset import Charset COMMASPACE = ', ' diff -r 72889bf8531d Lib/functools.py --- a/Lib/functools.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/functools.py Wed Mar 19 11:43:41 2014 +0100 @@ -19,7 +19,7 @@ except ImportError: pass from abc import get_cache_token from collections import namedtuple -from types import MappingProxyType, MethodType +from types import MappingProxyType from weakref import WeakKeyDictionary try: from _thread import RLock diff -r 72889bf8531d Lib/http/client.py --- a/Lib/http/client.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/http/client.py Wed Mar 19 11:43:41 2014 +0100 @@ -73,7 +73,6 @@ import os import socket import collections from urllib.parse import urlsplit -import warnings __all__ = ["HTTPResponse", "HTTPConnection", "HTTPException", "NotConnected", "UnknownProtocol", diff -r 72889bf8531d Lib/http/server.py --- a/Lib/http/server.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/http/server.py Wed Mar 19 11:43:41 2014 +0100 @@ -85,8 +85,6 @@ XXX To do: __all__ = ["HTTPServer", "BaseHTTPRequestHandler"] import html -import email.message -import email.parser import http.client import io import mimetypes diff -r 72889bf8531d Lib/logging/config.py --- a/Lib/logging/config.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/logging/config.py Wed Mar 19 11:43:41 2014 +0100 @@ -24,7 +24,7 @@ Copyright (C) 2001-2013 Vinay Sajip. All To use, simply 'import logging' and log away! """ -import sys, logging, logging.handlers, socket, struct, traceback, re +import sys, logging, logging.handlers, struct, traceback, re import io try: diff -r 72889bf8531d Lib/logging/handlers.py --- a/Lib/logging/handlers.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/logging/handlers.py Wed Mar 19 11:43:41 2014 +0100 @@ -23,8 +23,7 @@ Copyright (C) 2001-2013 Vinay Sajip. All To use, simply 'import logging.handlers' and log away! """ -import errno, logging, socket, os, pickle, struct, time, re -from codecs import BOM_UTF8 +import logging, socket, os, pickle, struct, time, re from stat import ST_DEV, ST_INO, ST_MTIME import queue try: diff -r 72889bf8531d Lib/mailbox.py --- a/Lib/mailbox.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/mailbox.py Wed Mar 19 11:43:41 2014 +0100 @@ -6,7 +6,6 @@ # or returning from a flush() method. See functions _sync_flush() and # _sync_close(). -import sys import os import time import calendar diff -r 72889bf8531d Lib/multiprocessing/connection.py --- a/Lib/multiprocessing/connection.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/connection.py Wed Mar 19 11:43:41 2014 +0100 @@ -14,7 +14,6 @@ import os import sys import socket import struct -import errno import time import tempfile import itertools diff -r 72889bf8531d Lib/multiprocessing/forkserver.py --- a/Lib/multiprocessing/forkserver.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/forkserver.py Wed Mar 19 11:43:41 2014 +0100 @@ -6,6 +6,7 @@ import socket import struct import sys import threading +from subprocess import _args_from_interpreter_flags from . import connection from . import process @@ -117,7 +118,7 @@ class ForkServer(object): cmd %= (listener.fileno(), alive_r, self._preload_modules, data) exe = spawn.get_executable() - args = [exe] + util._args_from_interpreter_flags() + args = [exe] + _args_from_interpreter_flags() args += ['-c', cmd] pid = util.spawnv_passfds(exe, args, fds_to_pass) except: diff -r 72889bf8531d Lib/multiprocessing/heap.py --- a/Lib/multiprocessing/heap.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/heap.py Wed Mar 19 11:43:41 2014 +0100 @@ -8,13 +8,11 @@ # import bisect -import itertools import mmap import os import sys import tempfile import threading -import _multiprocessing from . import context from . import reduction diff -r 72889bf8531d Lib/multiprocessing/pool.py --- a/Lib/multiprocessing/pool.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/pool.py Wed Mar 19 11:43:41 2014 +0100 @@ -24,7 +24,7 @@ import traceback # If threading is available then ThreadPool should be provided. Therefore # we avoid top-level imports which are liable to fail on some systems. from . import util -from . import get_context, cpu_count, TimeoutError +from . import get_context, TimeoutError # # Constants representing the state of a pool diff -r 72889bf8531d Lib/multiprocessing/popen_spawn_posix.py --- a/Lib/multiprocessing/popen_spawn_posix.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/popen_spawn_posix.py Wed Mar 19 11:43:41 2014 +0100 @@ -1,4 +1,3 @@ -import fcntl import io import os @@ -8,8 +7,6 @@ from . import reduction from . import spawn from . import util -from . import current_process - __all__ = ['Popen'] diff -r 72889bf8531d Lib/multiprocessing/reduction.py --- a/Lib/multiprocessing/reduction.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/reduction.py Wed Mar 19 11:43:41 2014 +0100 @@ -16,7 +16,6 @@ import socket import sys from . import context -from . import util __all__ = ['send_handle', 'recv_handle', 'ForkingPickler', 'register', 'dump'] diff -r 72889bf8531d Lib/multiprocessing/semaphore_tracker.py --- a/Lib/multiprocessing/semaphore_tracker.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/semaphore_tracker.py Wed Mar 19 11:43:41 2014 +0100 @@ -11,17 +11,16 @@ # python" would probably leave unlinked semaphores. # -import errno import os import signal import sys import threading import warnings import _multiprocessing +from subprocess import _args_from_interpreter_flags from . import spawn from . import util -from . import current_process __all__ = ['ensure_running', 'register', 'unregister'] @@ -55,7 +54,7 @@ class SemaphoreTracker(object): fds_to_pass.append(r) # process will out live us, so no need to wait on pid exe = spawn.get_executable() - args = [exe] + util._args_from_interpreter_flags() + args = [exe] + _args_from_interpreter_flags() args += ['-c', cmd % r] util.spawnv_passfds(exe, args, fds_to_pass) except: diff -r 72889bf8531d Lib/multiprocessing/spawn.py --- a/Lib/multiprocessing/spawn.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/spawn.py Wed Mar 19 11:43:41 2014 +0100 @@ -13,6 +13,7 @@ import pickle import sys import runpy import types +from subprocess import _args_from_interpreter_flags from . import get_start_method, set_start_method from . import process @@ -77,7 +78,7 @@ def get_command_line(**kwds): else: prog = 'from multiprocessing.spawn import spawn_main; spawn_main(%s)' prog %= ', '.join('%s=%r' % item for item in kwds.items()) - opts = util._args_from_interpreter_flags() + opts = _args_from_interpreter_flags() return [_python_exe] + opts + ['-c', prog, '--multiprocessing-fork'] diff -r 72889bf8531d Lib/multiprocessing/synchronize.py --- a/Lib/multiprocessing/synchronize.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/synchronize.py Wed Mar 19 11:43:41 2014 +0100 @@ -11,10 +11,8 @@ 'Lock', 'RLock', 'Semaphore', 'BoundedSemaphore', 'Condition', 'Event' ] -import os import threading import sys -import itertools import tempfile import _multiprocessing diff -r 72889bf8531d Lib/multiprocessing/util.py --- a/Lib/multiprocessing/util.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/multiprocessing/util.py Wed Mar 19 11:43:41 2014 +0100 @@ -7,15 +7,12 @@ # Licensed to PSF under a Contributor Agreement. # -import sys -import functools import os import itertools import weakref import atexit import threading # we want threading to install it's # cleanup function before multiprocessing does -from subprocess import _args_from_interpreter_flags from . import process diff -r 72889bf8531d Lib/nntplib.py --- a/Lib/nntplib.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/nntplib.py Wed Mar 19 11:43:41 2014 +0100 @@ -1085,7 +1085,6 @@ if _have_ssl: # Test retrieval when run as a script. if __name__ == '__main__': import argparse - from email.utils import parsedate parser = argparse.ArgumentParser(description="""\ nntplib built-in demo - display the latest articles in a newsgroup""") diff -r 72889bf8531d Lib/pickle.py --- a/Lib/pickle.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/pickle.py Wed Mar 19 11:43:41 2014 +0100 @@ -23,7 +23,7 @@ Misc variables: """ -from types import FunctionType, ModuleType +from types import FunctionType from copyreg import dispatch_table from copyreg import _extension_registry, _inverted_registry, _extension_cache from itertools import islice diff -r 72889bf8531d Lib/platform.py --- a/Lib/platform.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/platform.py Wed Mar 19 11:43:41 2014 +0100 @@ -503,7 +503,6 @@ def win32_ver(release='', version='', cs # Import the needed APIs try: - import win32api from win32api import RegQueryValueEx, RegOpenKeyEx, \ RegCloseKey, GetVersionEx from win32con import HKEY_LOCAL_MACHINE, VER_PLATFORM_WIN32_NT, \ diff -r 72889bf8531d Lib/pydoc.py --- a/Lib/pydoc.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/pydoc.py Wed Mar 19 11:43:41 2014 +0100 @@ -66,7 +66,7 @@ import tokenize import warnings from collections import deque from reprlib import Repr -from traceback import extract_tb, format_exception_only +from traceback import format_exception_only # --------------------------------------------------------- common routines diff -r 72889bf8531d Lib/runpy.py --- a/Lib/runpy.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/runpy.py Wed Mar 19 11:43:41 2014 +0100 @@ -10,7 +10,6 @@ importers when locating support scripts # to implement PEP 338 (Executing Modules as Scripts) -import os import sys import importlib.machinery # importlib first so we can test #15386 via -m import importlib.util diff -r 72889bf8531d Lib/socketserver.py --- a/Lib/socketserver.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/socketserver.py Wed Mar 19 11:43:41 2014 +0100 @@ -131,7 +131,6 @@ BaseServer: import socket import select -import sys import os import errno try: diff -r 72889bf8531d Lib/sre_compile.py --- a/Lib/sre_compile.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/sre_compile.py Wed Mar 19 11:43:41 2014 +0100 @@ -10,7 +10,7 @@ """Internal support module for sre""" -import _sre, sys +import _sre import sre_parse from sre_constants import * from _sre import MAXREPEAT diff -r 72889bf8531d Lib/sre_parse.py --- a/Lib/sre_parse.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/sre_parse.py Wed Mar 19 11:43:41 2014 +0100 @@ -12,8 +12,6 @@ # XXX: show string offset and offending character for all errors -import sys - from sre_constants import * from _sre import MAXREPEAT diff -r 72889bf8531d Lib/ssl.py --- a/Lib/ssl.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/ssl.py Wed Mar 19 11:43:41 2014 +0100 @@ -147,12 +147,9 @@ else: if sys.platform == "win32": from _ssl import enum_certificates, enum_crls -from socket import getnameinfo as _getnameinfo -from socket import SHUT_RDWR as _SHUT_RDWR from socket import socket, AF_INET, SOCK_STREAM, create_connection from socket import SOL_SOCKET, SO_TYPE import base64 # for DER-to-PEM translation -import traceback import errno diff -r 72889bf8531d Lib/subprocess.py --- a/Lib/subprocess.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/subprocess.py Wed Mar 19 11:43:41 2014 +0100 @@ -350,8 +350,6 @@ mswindows = (sys.platform == "win32") import io import os import time -import traceback -import gc import signal import builtins import warnings diff -r 72889bf8531d Lib/tarfile.py --- a/Lib/tarfile.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/tarfile.py Wed Mar 19 11:43:41 2014 +0100 @@ -65,8 +65,6 @@ except NameError: # from tarfile import * __all__ = ["TarFile", "TarInfo", "is_tarfile", "TarError"] -from builtins import open as _open # Since 'open' is TarFile.open - #--------------------------------------------------------- # tar constants #--------------------------------------------------------- diff -r 72889bf8531d Lib/threading.py --- a/Lib/threading.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/threading.py Wed Mar 19 11:43:41 2014 +0100 @@ -3,7 +3,6 @@ import sys as _sys import _thread -from time import sleep as _sleep try: from time import monotonic as _time except ImportError: diff -r 72889bf8531d Lib/tkinter/__init__.py --- a/Lib/tkinter/__init__.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/tkinter/__init__.py Wed Mar 19 11:43:41 2014 +0100 @@ -35,8 +35,6 @@ if sys.platform == "win32": # Attempt to configure Tcl/Tk without requiring PATH from tkinter import _fix -import warnings - import _tkinter # If this fails your Python may not be configured for Tk TclError = _tkinter.TclError from tkinter.constants import * diff -r 72889bf8531d Lib/tkinter/tix.py --- a/Lib/tkinter/tix.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/tkinter/tix.py Wed Mar 19 11:43:41 2014 +0100 @@ -27,7 +27,7 @@ # from tkinter import * -from tkinter import _flatten, _cnfmerge, _default_root +from tkinter import _cnfmerge, _default_root # WARNING - TkVersion is a limited precision floating point number if TkVersion < 3.999: diff -r 72889bf8531d Lib/venv/__init__.py --- a/Lib/venv/__init__.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/venv/__init__.py Wed Mar 19 11:43:41 2014 +0100 @@ -32,7 +32,6 @@ import os import shutil import subprocess import sys -import sysconfig import types logger = logging.getLogger(__name__) diff -r 72889bf8531d Lib/xmlrpc/client.py --- a/Lib/xmlrpc/client.py Tue Mar 18 13:21:29 2014 +0100 +++ b/Lib/xmlrpc/client.py Wed Mar 19 11:43:41 2014 +0100 @@ -134,7 +134,6 @@ from datetime import datetime import http.client import urllib.parse from xml.parsers import expat -import socket import errno from io import BytesIO try: