cpython/Lib
INADA Naoki 8d130913cb
bpo-34043: Optimize tarfile uncompress performance (GH-8089)
tarfile._Stream has two buffer for compressed and uncompressed data.
Those buffers are not aligned so unnecessary bytes slicing happens
for every reading chunks.

This commit bypass compressed buffering.

In this benchmark [1], user time become 250ms from 300ms.

[1]: https://bugs.python.org/msg320763
2018-07-06 14:06:00 +09:00
..
asyncio bpo-27500: Fix static version of getaddrinfo to resolve IPv6 (GH-7993) 2018-06-28 21:59:32 -04:00
collections Add more detail to the Counter.fromkeys() comment block (GH-8124) 2018-07-05 16:36:24 -07:00
concurrent bpo-33238: Add InvalidStateError to concurrent.futures. (GH-7056) 2018-05-30 10:15:06 +03:00
ctypes bpo-16865: Support arrays >=2GB in ctypes. (GH-3006) 2018-05-15 02:54:29 +03:00
curses Issue #13051: Fixed recursion errors in large or resized curses.textpad.Textbox. 2016-12-28 10:16:06 +02:00
dbm bpo-32749: Make dbm.dumb databases more cosistent with other dbm databases. (#5497) 2018-02-05 22:47:31 +02:00
distutils Improve error message for "setup.py upload" without dist files (#21060) 2018-02-18 18:14:54 -05:00
email bpo-27397: Make email module properly handle invalid-length base64 strings (#7583) 2018-06-12 15:46:22 +03:00
encodings bpo-32943: Fix confusing error message for rot13 codec (GH-5869) 2018-03-25 12:09:21 +08:00
ensurepip Improve ensurepip's --help (GH-4686) 2018-05-30 09:45:55 +02:00
html bpo-30629: Remove second call of str.lower() in html.parser.parse_endtag. (#2099) 2017-06-16 21:15:25 -04:00
http bpo-33365: print the header values beside the keys (GH-6611) 2018-06-19 16:20:58 +03:00
idlelib bpo-33975: Avoid small type when running IDLE's htests. (GH-7944) 2018-06-27 00:07:30 -04:00
importlib bpo-33499: Add PYTHONPYCACHEPREFIX env var for alt bytecode cache location. (GH-6834) 2018-06-16 14:40:56 +10:00
json bpo-30877: Fix clearing a cache in the the JSON decoder. (GH-7048) 2018-05-22 14:55:07 +03:00
lib2to3 bpo-31583: Fix 2to3 for using with --add-suffix option (GH-3758) 2018-04-18 16:50:25 -07:00
logging bpo-33978: Close existing handlers before logging (re-)configuration. (GH-8008) 2018-07-02 09:57:46 +01:00
msilib Remove all mention of Windows IA-64 support (GH-3389) 2017-09-06 15:45:25 -07:00
multiprocessing bpo-33929: Fix regression in spawn_main() (#7962) 2018-06-27 15:18:39 +02:00
pydoc_data Update NEWS, docs, and patchlevel for 3.7.0b1 2018-01-31 17:14:30 -05:00
site-packages Issue #29283: Delete accidentally added Lib/site-packages/README 2017-01-30 13:55:49 +03:00
sqlite3 Spelling fixes to docs, docstrings, and comments (GH-6374) 2018-04-20 16:08:45 -04:00
test bpo-34044: subprocess.Popen copies startupinfo (GH-8090) 2018-07-05 22:54:17 +02:00
tkinter bpo-33974: Fix passing special characters to ttk widgets. (GH-7986) 2018-06-30 09:20:28 +03:00
turtledemo bpo-14117: Make minor tweaks to turtledemo (GH-8002) 2018-06-29 01:10:05 -04:00
unittest bpo-33746: Fix test_unittest.testRegisterResult() in verbose mode (GH-7799) 2018-06-20 11:29:33 +02:00
urllib bpo-21475: Support the Sitemap extension in robotparser (GH-6883) 2018-05-16 10:52:07 -04:00
venv bpo-32409: Ensures activate.bat can handle Unicode contents (GH-5757) 2018-02-19 17:25:24 -08:00
wsgiref Remove tiny bit of deadcode from wsgiref.validate (#3996) 2017-10-31 00:07:36 -04:00
xml bpo-33274: Compliance with DOM L1: return removed attribute (#7465) 2018-06-07 00:42:38 -04:00
xmlrpc bpo-27485: Rename and deprecate undocumented functions in urllib.parse (GH-2205) 2018-04-25 16:51:54 -07:00
__future__.py String annotations [PEP 563] (#4390) 2018-01-26 08:20:18 -08:00
__phello__.foo.py
_bootlocale.py bpo-29240: PEP 540: Add a new UTF-8 Mode (#855) 2017-12-13 12:29:09 +01:00
_collections_abc.py bpo-32467: Let collections.abc.ValuesView inherit from Collection (#5152) 2018-01-11 21:53:49 -08:00
_compat_pickle.py
_compression.py
_dummy_thread.py Restore dummy_threading and _dummy_thread, but deprecate them (bpo-31370) (#3648) 2017-09-18 22:04:20 +02:00
_markupbase.py
_osx_support.py Fix misplaced positional argument in OS X support library (#1134) 2017-04-14 15:28:55 +03:00
_py_abc.py bpo-33018: Improve issubclass() error checking and message. (GH-5944) 2018-03-22 11:26:06 +00:00
_pydecimal.py bpo-32630: Use contextvars in decimal (GH-5278) 2018-01-27 13:46:46 -05:00
_pyio.py bpo-25862: Fix assertion failures in io.TextIOWrapper.tell(). (GH-3918) 2018-06-29 13:14:58 +03:00
_sitebuiltins.py
_strptime.py bpo-33541: Remove unused __pad function (GH-4377) 2018-05-20 13:42:30 -04:00
_threading_local.py Delete a broken threading.local example (#5870) 2018-02-25 10:03:40 -05:00
_weakrefset.py bpo-30296 Remove unnecessary tuples, lists, sets, and dicts (#1489) 2017-05-18 07:35:54 -07:00
abc.py bpo-31333: Re-implement ABCMeta in C (#5273) 2018-02-18 12:41:58 +00:00
aifc.py bpo-32056: Improve exceptions in aifc, wave and sunau. (GH-5951) 2018-03-18 09:55:53 +02:00
antigravity.py
argparse.py bpo-11874: fix assertion failure in argparse metavar handling (GH-1826) 2018-06-08 20:12:49 +10:00
ast.py bpo-33851: Fix ast.get_docstring() for a node that lacks a docstring. (GH-7682) 2018-06-15 11:05:15 +03:00
asynchat.py
asyncore.py bpo-29639: change test.support.HOST to "localhost" 2017-09-09 00:30:15 -07:00
base64.py Add Python version since deprecation in base64 methods. (#33) 2017-03-02 17:21:26 +03:00
bdb.py Docs: fix some wrong words (GH-6987) 2018-06-02 07:16:19 -07:00
binhex.py
bisect.py
bz2.py bpo-31370: Remove support for threads-less builds (#3385) 2017-09-07 18:56:24 +02:00
calendar.py Closes bpo-28281: Remove year (1-9999) limits on the weekday() function. (#4109) 2017-10-26 15:34:11 -04:00
cgi.py bpo-33843: Remove deprecated stuff in cgi module (GH-7662) 2018-06-19 17:28:50 +09:00
cgitb.py bpo-33311: Do not display parameters displayed in parentheses for module call. (GH-6677) 2018-05-09 12:39:32 +03:00
chunk.py bpo-29762: More use "raise from None". (#569) 2017-04-05 09:37:24 +03:00
cmd.py
code.py bpo-30166: Import command-line parsing modules only when needed. (#1293) 2017-05-04 08:17:47 +03:00
codecs.py bpo-32110: codecs.StreamReader.read(n) now returns not more than n (#4499) 2017-11-29 01:30:00 +02:00
codeop.py
colorsys.py
compileall.py closes bpo-31650: PEP 552 (Deterministic pycs) implementation (#4575) 2017-12-09 10:26:52 -08:00
configparser.py bpo-32108: Don't clear configparser values if key is assigned to itself (GH-7588) 2018-06-12 13:37:51 -07:00
contextlib.py bpo-33786: Fix asynchronous generators to handle GeneratorExit in athrow() (GH-7467) 2018-06-07 20:31:26 -04:00
contextvars.py bpo-32436: Implement PEP 567 (#5027) 2018-01-22 19:11:18 -05:00
copy.py
copyreg.py bpo-31107: Fix copyreg mangled slot names calculation. (#2989) 2017-08-04 11:45:00 +03:00
cProfile.py bpo-29235: Make cProfile.Profile a context manager (GH-6808) 2018-06-01 13:36:23 -07:00
crypt.py bpo-31702: Allow to specify rounds for SHA-2 hashing in crypt.mksalt(). (#4110) 2017-11-16 13:22:51 +02:00
csv.py bpo-30157: Fix csv.Sniffer.sniff() regex pattern. (GH-5601) 2018-02-09 20:00:49 +02:00
dataclasses.py Fix typo in dataclasses documentation (GH-8102) 2018-07-05 19:09:13 -04:00
datetime.py bpo-33812: Corrected astimezone for naive datetimes. (GH-7578) 2018-06-10 17:02:58 -04:00
decimal.py
difflib.py bpo-33224: PEP 479 fix for difflib.mdiff() (GH-6381) 2018-04-05 11:19:57 -07:00
dis.py bpo-32970: Improve disassembly of the MAKE_FUNCTION instruction. (GH-5937) 2018-03-11 11:07:06 +02:00
doctest.py bpo-25054, bpo-1647489: Added support of splitting on zerowidth patterns. (#4471) 2017-12-04 14:29:05 +02:00
dummy_threading.py Restore dummy_threading and _dummy_thread, but deprecate them (bpo-31370) (#3648) 2017-09-18 22:04:20 +02:00
enum.py bpo-33866: enum: Stop using OrderedDict (GH-7698) 2018-06-19 01:14:26 +09:00
filecmp.py
fileinput.py bpo-31281: Fix pathlib.Path incompatibility in fileinput (gh-3208) 2017-09-04 13:37:24 -04:00
fnmatch.py bpo-32775: Fix regular expression warnings in fnmatch. (#5583) 2018-02-09 13:30:19 +02:00
formatter.py
fractions.py
ftplib.py bpo-31346: Use PROTOCOL_TLS_CLIENT/SERVER (#3058) 2017-09-15 20:27:30 +02:00
functools.py bpo-32380: Create functools.singledispatchmethod (#6306) 2018-05-26 13:38:33 -07:00
genericpath.py
getopt.py
getpass.py getpass: update docstrings (#49) 2017-02-12 23:10:48 +01:00
gettext.py bpo-30152: Reduce the number of imports for argparse. (#1269) 2017-09-26 00:55:55 +03:00
glob.py
gzip.py Replace KB unit with KiB (#4293) 2017-11-08 14:44:44 -08:00
hashlib.py Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
heapq.py Improve clarity (and small speed-up) by using tuple unpacking (#3289) 2017-09-04 11:47:58 -07:00
hmac.py bpo-33604: Remove Pending from hmac Deprecation warning. (GH-7062) 2018-05-22 15:55:31 -07:00
imaplib.py bpo-32157: Removed explicit quotes around %r and {!r}. (#4582) 2017-11-28 22:54:42 +02:00
imghdr.py
imp.py bpo-30645: don't append to an inner loop path in imp.load_package() (GH-2268) 2017-06-23 10:35:03 -07:00
inspect.py bpo-33582: Remove duplicate space in inspect.formatargspec() deprecation warning (GH-7655) 2018-06-11 23:16:18 -04:00
io.py
ipaddress.py bpo-27683: Fix a regression for host() of ipaddress network objects (GH-6016) 2018-03-21 08:25:13 +08:00
keyword.py bpo-30406: Make async and await proper keywords (#1669) 2017-10-05 23:24:46 -04:00
linecache.py
locale.py Remove mojibake in the locale aliases mapping. (GH-6716) 2018-05-06 10:52:38 +03:00
lzma.py
macpath.py bpo-31802: Fix importing native path module before importing os. (#4017) 2018-01-07 17:54:31 +02:00
mailbox.py bpo-29762: More use "raise from None". (#569) 2017-04-05 09:37:24 +03:00
mailcap.py
mimetypes.py bpo-27485: Rename and deprecate undocumented functions in urllib.parse (GH-2205) 2018-04-25 16:51:54 -07:00
modulefinder.py closes bpo-31650: PEP 552 (Deterministic pycs) implementation (#4575) 2017-12-09 10:26:52 -08:00
netrc.py bpo-28334: netrc() now uses expanduser() to find .netrc file (GH-4537) 2017-11-25 13:37:22 +03:00
nntplib.py bpo-29762: More use "raise from None". (#569) 2017-04-05 09:37:24 +03:00
ntpath.py bpo-31802: Fix importing native path module before importing os. (#4017) 2018-01-07 17:54:31 +02:00
nturl2path.py bpo-29836: Remove nturl2path from test_sundry and amend the module docstring (GH-694) 2017-03-17 11:16:20 -07:00
numbers.py Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
opcode.py bpo-33041: Rework compiling an "async for" loop. (#6142) 2018-03-23 14:34:35 +02:00
operator.py
optparse.py
os.py bpo-32297: Few misspellings found in Python source code comments. (#4803) 2017-12-14 13:04:53 +02:00
pathlib.py bpo-31972: Improve docstrings for pathlib classes (#5310) 2018-02-18 18:36:32 -05:00
pdb.py bpo-32691: Use mod_spec.parent when running modules with pdb (GH-5474) 2018-02-03 16:40:11 +10:00
pickle.py bpo-23403: Bump pickle.DEFAULT_PROTOCOL to 4 (#6355) 2018-04-03 23:06:53 -07:00
pickletools.py bpo-31993: Do not allocate large temporary buffers in pickle dump. (#4353) 2018-01-06 17:18:54 +02:00
pipes.py
pkgutil.py closes bpo-31650: PEP 552 (Deterministic pycs) implementation (#4575) 2017-12-09 10:26:52 -08:00
platform.py bpo-28167: Remove platform.linux_distribution (GH-6871) 2018-05-16 11:51:18 -04:00
plistlib.py bpo-33908: Remove two superfluous assignments (GH-7116) 2018-06-20 13:07:31 +08:00
poplib.py bpo-32981: Fix catastrophic backtracking vulns (#5955) 2018-03-03 21:33:32 -08:00
posixpath.py bpo-31802: Fix importing native path module before importing os. (#4017) 2018-01-07 17:54:31 +02:00
pprint.py
profile.py time.clock() now emits a DeprecationWarning (GH-4020) 2017-10-17 14:46:45 -07:00
pstats.py Revert unneccessary changes made in bpo-30296 and apply other improvements. (GH-2624) 2018-02-26 16:50:11 +02:00
pty.py
py_compile.py bpo-29708: Setting SOURCE_DATE_EPOCH forces hash-based .pyc files (GH-5200) 2018-01-24 13:26:18 -08:00
pyclbr.py bpo-6691: Pyclbr now reports nested classes and functions. (#2503) 2017-07-03 21:31:25 -04:00
pydoc.py bpo-33422: Fix quotation marks getting deleted when looking up byte/string literals on pydoc. (GH-6701) 2018-05-05 19:07:32 +03:00
queue.py bpo-14976: Reentrant simple queue (#3346) 2018-01-16 00:27:16 +01:00
quopri.py
random.py Minor code refactoring. Compute len() one fewer times on one code path. (GH-8094) 2018-07-04 15:28:20 -07:00
re.py bpo-32338: OrderedDict import is no longer needed in re. (#4891) 2018-03-11 08:38:13 +02:00
reprlib.py bpo-31370: Remove support for threads-less builds (#3385) 2017-09-07 18:56:24 +02:00
rlcompleter.py
runpy.py
sched.py bpo-31370: Remove support for threads-less builds (#3385) 2017-09-07 18:56:24 +02:00
secrets.py Issue #29061: secrets.randbelow() would hang with a negative input 2016-12-29 22:54:25 -07:00
selectors.py bpo-30624 remaining bare except (#2108) 2017-06-12 14:43:40 +02:00
shelve.py Fix misleading docsting of shelve.open(). (GH-6427) 2018-04-09 17:16:01 +03:00
shlex.py Fixed #29132: Updated shlex to work better with punctuation chars in POSIX mode. 2017-01-15 10:06:52 +00:00
shutil.py bpo-33671 / shutil.copyfile: use memoryview() with dynamic size on Windows (#7681) 2018-06-19 08:27:29 -07:00
signal.py bpo-33332: Add signal.valid_signals() (GH-6581) 2018-05-04 13:00:50 +02:00
site.py bpo-30167: Prevent site.main() exception if PYTHONSTARTUP is set. (GH-6731) 2018-06-10 20:49:34 -04:00
smtpd.py
smtplib.py bpo-32727: smtplib's SMTP.send_message behaves differently with from_addr and to_addrs (#5451) 2018-01-30 19:02:51 -05:00
sndhdr.py bpo-31985: Deprecate openfp in aifc, sunau, and wave (#4344) 2017-11-10 11:38:25 -05:00
socket.py bpo-28134: Auto-detect socket values from file descriptor (#1349) 2018-01-29 22:37:58 +01:00
socketserver.py bpo-33540: Fix socketserver.ThreadingMixIn if block_on_close=False (GH-7310) 2018-06-01 14:21:34 +02:00
sre_compile.py bpo-31690: Allow the inline flags "a", "L", and "u" to be used as group flags for RE. (#3885) 2017-10-24 23:31:42 +03:00
sre_constants.py bpo-31690: Allow the inline flags "a", "L", and "u" to be used as group flags for RE. (#3885) 2017-10-24 23:31:42 +03:00
sre_parse.py bpo-30688: Import unicodedata only when needed. (GH-5606) 2018-02-10 08:59:29 +02:00
ssl.py bpo-24334: Remove inaccurate match_hostname call (#6211) 2018-03-24 15:36:50 +01:00
stat.py
statistics.py bpo-29919: Remove unused imports found by pyflakes (#137) 2017-03-27 16:05:26 +02:00
string.py bpo-31672: Restore the former behavior when override flags in Template. (#5099) 2018-01-04 19:20:11 +02:00
stringprep.py
struct.py
subprocess.py bpo-34044: subprocess.Popen copies startupinfo (GH-8090) 2018-07-05 22:54:17 +02:00
sunau.py bpo-32056: Improve exceptions in aifc, wave and sunau. (GH-5951) 2018-03-18 09:55:53 +02:00
symbol.py bpo-30406: Make async and await proper keywords (#1669) 2017-10-05 23:24:46 -04:00
symtable.py bpo-30296 Remove unnecessary tuples, lists, sets, and dicts (#1489) 2017-05-18 07:35:54 -07:00
sysconfig.py remove support for BSD/OS (closes bpo-31624) (#3812) 2017-09-28 22:44:27 -07:00
tabnanny.py bpo-30166: Import command-line parsing modules only when needed. (#1293) 2017-05-04 08:17:47 +03:00
tarfile.py bpo-34043: Optimize tarfile uncompress performance (GH-8089) 2018-07-06 14:06:00 +09:00
telnetlib.py bpo-30397: Add re.Pattern and re.Match. (#1646) 2017-10-04 20:09:49 +03:00
tempfile.py bpo-27300: Add the errors parameter to tempfile classes. (GH-6696) 2018-05-23 08:07:01 +03:00
textwrap.py bpo-30620: Remove dead lines from textwrap.dedent (GH-2064) 2017-06-15 19:19:43 -07:00
this.py
threading.py bpo-33556: Remove reference to thread module from docstring (GH-6963) 2018-05-18 13:38:36 -05:00
timeit.py bpo-28240: timeit: Update repeat() doc (GH-7419) 2018-06-06 17:55:18 +02:00
token.py bpo-33260: Regenerate token.py after removing ASYNC and AWAIT. (GH-6447) 2018-04-11 19:15:51 +03:00
tokenize.py bpo-12486: Document tokenize.generate_tokens() as public API (#6957) 2018-06-05 10:26:39 -07:00
trace.py bpo-31908: Fix output of cover files for trace module command-line tool. (GH-4205) 2018-05-01 06:46:52 +03:00
traceback.py bpo-28603: Fix formatting tracebacks for unhashable exceptions (#4014) 2017-10-18 00:29:39 +03:00
tracemalloc.py bpo-32121: Add most_recent_first parameter to tracemalloc.Traceback.format (#4534) 2017-11-30 00:05:07 +01:00
tty.py
turtle.py Revert unneccessary changes made in bpo-30296 and apply other improvements. (GH-2624) 2018-02-26 16:50:11 +02:00
types.py bpo-32265: Classify class and static methods of builtin types. (#4776) 2017-12-15 14:13:41 +02:00
typing.py bpo-33652: Remove __getstate__ and __setstate__ methods in typing. (GH-7144) 2018-05-28 11:54:56 +01:00
uu.py bpo-30103: Allow Uuencode in Python using backtick as zero instead of space (#1326) 2017-05-03 11:16:21 +08:00
uuid.py bpo-33542: Ignore DUID in uuid.get_node on Windows. (GH-6922) 2018-05-20 18:03:25 +03:00
warnings.py bpo-33375: Get filename for warnings from frame.f_code.co_filename (GH-6622) 2018-06-08 12:28:37 -07:00
wave.py bpo-32056: Improve exceptions in aifc, wave and sunau. (GH-5951) 2018-03-18 09:55:53 +02:00
weakref.py bpo-30152: Reduce the number of imports for argparse. (#1269) 2017-09-26 00:55:55 +03:00
webbrowser.py bpo-34019: Fix wrong arguments for Opera Browser (#8047) 2018-07-03 12:30:06 +01:00
xdrlib.py
zipapp.py bpo-31638: Add compression support to zipapp (GH-3819) 2017-09-29 18:31:52 +01:00
zipfile.py bpo-30693: zip+tarfile: sort directory listing (#2263) 2018-01-31 11:17:10 +01:00