Issue #27895: Spelling fixes (Contributed by Ville Skyttä).
This commit is contained in:
parent
be8da9c990
commit
0be894b2f6
|
@ -433,5 +433,5 @@ Currently the email package provides only one concrete content manager,
|
|||
|
||||
If *headers* is specified and is a list of strings of the form
|
||||
``headername: headervalue`` or a list of ``header`` objects
|
||||
(distinguised from strings by having a ``name`` attribute), add the
|
||||
(distinguished from strings by having a ``name`` attribute), add the
|
||||
headers to *msg*.
|
||||
|
|
|
@ -45,7 +45,7 @@ SMTPServer Objects
|
|||
dictionary is a suitable value). If not specified the :mod:`asyncore`
|
||||
global socket map is used.
|
||||
|
||||
*enable_SMTPUTF8* determins whether the ``SMTPUTF8`` extension (as defined
|
||||
*enable_SMTPUTF8* determines whether the ``SMTPUTF8`` extension (as defined
|
||||
in :RFC:`6531`) should be enabled. The default is ``False``. If set to
|
||||
``True``, *decode_data* must be ``False`` (otherwise an error is raised).
|
||||
When ``True``, ``SMTPUTF8`` is accepted as a parameter to the ``MAIL``
|
||||
|
@ -162,7 +162,7 @@ SMTPChannel Objects
|
|||
accepted in a ``DATA`` command. A value of ``None`` or ``0`` means no
|
||||
limit.
|
||||
|
||||
*enable_SMTPUTF8* determins whether the ``SMTPUTF8`` extension (as defined
|
||||
*enable_SMTPUTF8* determines whether the ``SMTPUTF8`` extension (as defined
|
||||
in :RFC:`6531`) should be enabled. The default is ``False``. A
|
||||
:exc:`ValueError` is raised if both *enable_SMTPUTF8* and *decode_data* are
|
||||
set to ``True`` at the same time.
|
||||
|
|
|
@ -1954,7 +1954,7 @@ ssl
|
|||
:attr:`~ssl.OP_NO_COMPRESSION` can be used to disable compression.
|
||||
(Contributed by Antoine Pitrou in :issue:`13634`.)
|
||||
|
||||
* Support has been added for the Next Procotol Negotiation extension using
|
||||
* Support has been added for the Next Protocol Negotiation extension using
|
||||
the :meth:`ssl.SSLContext.set_npn_protocols` method.
|
||||
(Contributed by Colin Marc in :issue:`14204`.)
|
||||
|
||||
|
|
|
@ -458,7 +458,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/
|
|||
/* old buffer API
|
||||
FIXME: usage of these should all be replaced in Python itself
|
||||
but for backwards compatibility we will implement them.
|
||||
Their usage without a corresponding "unlock" mechansim
|
||||
Their usage without a corresponding "unlock" mechanism
|
||||
may create issues (but they would already be there). */
|
||||
|
||||
PyAPI_FUNC(int) PyObject_AsCharBuffer(PyObject *obj,
|
||||
|
|
|
@ -37,7 +37,7 @@ extern double pow(double, double);
|
|||
#endif /* __STDC__ */
|
||||
#endif /* _MSC_VER */
|
||||
|
||||
/* High precision defintion of pi and e (Euler)
|
||||
/* High precision definition of pi and e (Euler)
|
||||
* The values are taken from libc6's math.h.
|
||||
*/
|
||||
#ifndef Py_MATH_PIl
|
||||
|
|
|
@ -590,7 +590,7 @@ class StreamReader:
|
|||
bytes. If the EOF was received and the internal buffer is empty, return
|
||||
an empty bytes object.
|
||||
|
||||
If n is zero, return empty bytes object immediatelly.
|
||||
If n is zero, return empty bytes object immediately.
|
||||
|
||||
If n is positive, this function try to read `n` bytes, and may return
|
||||
less or equal bytes than requested, but at least one byte. If EOF was
|
||||
|
|
|
@ -63,7 +63,7 @@ import traceback
|
|||
# interpreter to exit when there are still idle processes in a
|
||||
# ProcessPoolExecutor's process pool (i.e. shutdown() was not called). However,
|
||||
# allowing workers to die with the interpreter has two undesirable properties:
|
||||
# - The workers would still be running during interpretor shutdown,
|
||||
# - The workers would still be running during interpreter shutdown,
|
||||
# meaning that they would fail in unpredictable ways.
|
||||
# - The workers could be killed while evaluating a work item, which could
|
||||
# be bad if the callable being evaluated has external side-effects e.g.
|
||||
|
|
|
@ -16,7 +16,7 @@ import os
|
|||
# to exit when there are still idle threads in a ThreadPoolExecutor's thread
|
||||
# pool (i.e. shutdown() was not called). However, allowing workers to die with
|
||||
# the interpreter has two undesirable properties:
|
||||
# - The workers would still be running during interpretor shutdown,
|
||||
# - The workers would still be running during interpreter shutdown,
|
||||
# meaning that they would fail in unpredictable ways.
|
||||
# - The workers could be killed while evaluating a work item, which could
|
||||
# be bad if the callable being evaluated has external side-effects e.g.
|
||||
|
|
|
@ -125,7 +125,7 @@ class msvc9compilerTestCase(support.TempdirManager,
|
|||
self.assertRaises(KeyError, Reg.get_value, 'xxx', 'xxx')
|
||||
|
||||
# looking for values that should exist on all
|
||||
# windows registeries versions.
|
||||
# windows registry versions.
|
||||
path = r'Control Panel\Desktop'
|
||||
v = Reg.get_value(path, 'dragfullwindows')
|
||||
self.assertIn(v, ('0', '1', '2'))
|
||||
|
|
|
@ -1043,7 +1043,7 @@ class MIMEPart(Message):
|
|||
yield from parts
|
||||
return
|
||||
# Otherwise we more or less invert the remaining logic in get_body.
|
||||
# This only really works in edge cases (ex: non-text relateds or
|
||||
# This only really works in edge cases (ex: non-text related or
|
||||
# alternatives) if the sending agent sets content-disposition.
|
||||
seen = [] # Only skip the first example of each candidate type.
|
||||
for part in parts:
|
||||
|
|
|
@ -136,7 +136,7 @@ _MAXHEADERS = 100
|
|||
#
|
||||
# VCHAR defined in http://tools.ietf.org/html/rfc5234#appendix-B.1
|
||||
|
||||
# the patterns for both name and value are more leniant than RFC
|
||||
# the patterns for both name and value are more lenient than RFC
|
||||
# definitions to allow for backwards compatibility
|
||||
_is_legal_header_name = re.compile(rb'[^:\s][^:\r\n]*').fullmatch
|
||||
_is_illegal_header_value = re.compile(rb'\n(?![ \t])|\r(?![ \t\n])').search
|
||||
|
|
|
@ -159,7 +159,7 @@ class FindTest(unittest.TestCase):
|
|||
class ReformatFunctionTest(unittest.TestCase):
|
||||
"""Test the reformat_paragraph function without the editor window."""
|
||||
|
||||
def test_reformat_paragrah(self):
|
||||
def test_reformat_paragraph(self):
|
||||
Equal = self.assertEqual
|
||||
reform = fp.reformat_paragraph
|
||||
hw = "O hello world"
|
||||
|
|
|
@ -64,7 +64,7 @@ class ReadError(OSError):
|
|||
|
||||
class RegistryError(Exception):
|
||||
"""Raised when a registry operation with the archiving
|
||||
and unpacking registeries fails"""
|
||||
and unpacking registries fails"""
|
||||
|
||||
|
||||
def copyfileobj(fsrc, fdst, length=16*1024):
|
||||
|
|
|
@ -26,7 +26,7 @@ import test.support.script_helper
|
|||
_multiprocessing = test.support.import_module('_multiprocessing')
|
||||
# Skip tests if sem_open implementation is broken.
|
||||
test.support.import_module('multiprocessing.synchronize')
|
||||
# import threading after _multiprocessing to raise a more revelant error
|
||||
# import threading after _multiprocessing to raise a more relevant error
|
||||
# message: "No module named _multiprocessing". _multiprocessing is not compiled
|
||||
# without thread support.
|
||||
import threading
|
||||
|
|
|
@ -3884,7 +3884,7 @@ class Oddballs(unittest.TestCase):
|
|||
self.assertRaises(TypeError, lambda: as_date >= as_datetime)
|
||||
self.assertRaises(TypeError, lambda: as_datetime >= as_date)
|
||||
|
||||
# Neverthelss, comparison should work with the base-class (date)
|
||||
# Nevertheless, comparison should work with the base-class (date)
|
||||
# projection if use of a date method is forced.
|
||||
self.assertEqual(as_date.__eq__(as_datetime), True)
|
||||
different_day = (as_date.day + 1) % 20 + 1
|
||||
|
|
|
@ -130,8 +130,8 @@ class LockTests(test_utils.TestCase):
|
|||
def test_cancel_race(self):
|
||||
# Several tasks:
|
||||
# - A acquires the lock
|
||||
# - B is blocked in aqcuire()
|
||||
# - C is blocked in aqcuire()
|
||||
# - B is blocked in acquire()
|
||||
# - C is blocked in acquire()
|
||||
#
|
||||
# Now, concurrently:
|
||||
# - B is cancelled
|
||||
|
|
|
@ -4,7 +4,7 @@ import test.support
|
|||
test.support.import_module('_multiprocessing')
|
||||
# Skip tests if sem_open implementation is broken.
|
||||
test.support.import_module('multiprocessing.synchronize')
|
||||
# import threading after _multiprocessing to raise a more revelant error
|
||||
# import threading after _multiprocessing to raise a more relevant error
|
||||
# message: "No module named _multiprocessing". _multiprocessing is not compiled
|
||||
# without thread support.
|
||||
test.support.import_module('threading')
|
||||
|
|
|
@ -876,7 +876,7 @@ class ClassPropertiesAndMethods(unittest.TestCase):
|
|||
self.assertEqual(Frag().__int__(), 42)
|
||||
self.assertEqual(int(Frag()), 42)
|
||||
|
||||
def test_diamond_inheritence(self):
|
||||
def test_diamond_inheritance(self):
|
||||
# Testing multiple inheritance special cases...
|
||||
class A(object):
|
||||
def spam(self): return "A"
|
||||
|
|
|
@ -723,12 +723,12 @@ class TestMessageAPI(TestEmailBase):
|
|||
|
||||
# Issue 5871: reject an attempt to embed a header inside a header value
|
||||
# (header injection attack).
|
||||
def test_embeded_header_via_Header_rejected(self):
|
||||
def test_embedded_header_via_Header_rejected(self):
|
||||
msg = Message()
|
||||
msg['Dummy'] = Header('dummy\nX-Injected-Header: test')
|
||||
self.assertRaises(errors.HeaderParseError, msg.as_string)
|
||||
|
||||
def test_embeded_header_via_string_rejected(self):
|
||||
def test_embedded_header_via_string_rejected(self):
|
||||
msg = Message()
|
||||
msg['Dummy'] = 'dummy\nX-Injected-Header: test'
|
||||
self.assertRaises(errors.HeaderParseError, msg.as_string)
|
||||
|
|
|
@ -372,7 +372,7 @@ class ResolveNameTests:
|
|||
# bacon
|
||||
self.assertEqual('bacon', self.util.resolve_name('bacon', None))
|
||||
|
||||
def test_aboslute_within_package(self):
|
||||
def test_absolute_within_package(self):
|
||||
# bacon in spam
|
||||
self.assertEqual('bacon', self.util.resolve_name('bacon', 'spam'))
|
||||
|
||||
|
|
|
@ -1262,7 +1262,7 @@ class IpaddrUnitTest(unittest.TestCase):
|
|||
ip4 = ipaddress.IPv4Address('1.1.1.3')
|
||||
ip5 = ipaddress.IPv4Address('1.1.1.4')
|
||||
ip6 = ipaddress.IPv4Address('1.1.1.0')
|
||||
# check that addreses are subsumed properly.
|
||||
# check that addresses are subsumed properly.
|
||||
collapsed = ipaddress.collapse_addresses(
|
||||
[ip1, ip2, ip3, ip4, ip5, ip6])
|
||||
self.assertEqual(list(collapsed),
|
||||
|
@ -1276,7 +1276,7 @@ class IpaddrUnitTest(unittest.TestCase):
|
|||
ip4 = ipaddress.IPv4Address('1.1.1.3')
|
||||
#ip5 = ipaddress.IPv4Interface('1.1.1.4/30')
|
||||
#ip6 = ipaddress.IPv4Interface('1.1.1.4/30')
|
||||
# check that addreses are subsumed properly.
|
||||
# check that addresses are subsumed properly.
|
||||
collapsed = ipaddress.collapse_addresses([ip1, ip2, ip3, ip4])
|
||||
self.assertEqual(list(collapsed),
|
||||
[ipaddress.IPv4Network('1.1.1.0/30')])
|
||||
|
@ -1290,7 +1290,7 @@ class IpaddrUnitTest(unittest.TestCase):
|
|||
# stored in no particular order b/c we want CollapseAddr to call
|
||||
# [].sort
|
||||
ip6 = ipaddress.IPv4Network('1.1.0.0/22')
|
||||
# check that addreses are subsumed properly.
|
||||
# check that addresses are subsumed properly.
|
||||
collapsed = ipaddress.collapse_addresses([ip1, ip2, ip3, ip4, ip5,
|
||||
ip6])
|
||||
self.assertEqual(list(collapsed),
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
"""
|
||||
Test suite to check compilance with PEP 247, the standard API
|
||||
Test suite to check compliance with PEP 247, the standard API
|
||||
for hashing algorithms
|
||||
"""
|
||||
|
||||
|
|
|
@ -686,7 +686,7 @@ class ProcessTestCase(BaseTestCase):
|
|||
self.assertEqual(stdout, "banana")
|
||||
self.assertStderrEqual(stderr.encode(), b"pineapple\npear\n")
|
||||
|
||||
def test_communicate_timeout_large_ouput(self):
|
||||
def test_communicate_timeout_large_output(self):
|
||||
# Test an expiring timeout while the child is outputting lots of data.
|
||||
p = subprocess.Popen([sys.executable, "-c",
|
||||
'import sys,os,time;'
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
"""Regresssion tests for what was in Python 2's "urllib" module"""
|
||||
"""Regression tests for what was in Python 2's "urllib" module"""
|
||||
|
||||
import urllib.parse
|
||||
import urllib.request
|
||||
|
|
|
@ -168,7 +168,7 @@ class BaseWinregTests(unittest.TestCase):
|
|||
DeleteKey(key, subkeystr)
|
||||
|
||||
try:
|
||||
# Shouldnt be able to delete it twice!
|
||||
# Shouldn't be able to delete it twice!
|
||||
DeleteKey(key, subkeystr)
|
||||
self.fail("Deleting the key twice succeeded")
|
||||
except OSError:
|
||||
|
|
|
@ -349,7 +349,7 @@ class TestDiscovery(unittest.TestCase):
|
|||
suite = list(loader._find_tests(abspath('/foo'), 'test*.py'))
|
||||
|
||||
# We should have loaded tests from both my_package and
|
||||
# my_pacakge.test_module, and also run the load_tests hook in both.
|
||||
# my_package.test_module, and also run the load_tests hook in both.
|
||||
# (normally this would be nested TestSuites.)
|
||||
self.assertEqual(suite,
|
||||
[['my_package load_tests', [],
|
||||
|
|
|
@ -27,7 +27,7 @@ class TestCallable(unittest.TestCase):
|
|||
self.assertIn(mock.__class__.__name__, repr(mock))
|
||||
|
||||
|
||||
def test_heirarchy(self):
|
||||
def test_hierarchy(self):
|
||||
self.assertTrue(issubclass(MagicMock, Mock))
|
||||
self.assertTrue(issubclass(NonCallableMagicMock, NonCallableMock))
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ deactivate () {
|
|||
fi
|
||||
}
|
||||
|
||||
# unset irrelavent variables
|
||||
# unset irrelevant variables
|
||||
deactivate nondestructive
|
||||
|
||||
VIRTUAL_ENV="__VENV_DIR__"
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate'
|
||||
|
||||
# Unset irrelavent variables.
|
||||
# Unset irrelevant variables.
|
||||
deactivate nondestructive
|
||||
|
||||
setenv VIRTUAL_ENV "__VENV_DIR__"
|
||||
|
|
|
@ -29,7 +29,7 @@ function deactivate -d "Exit virtualenv and return to normal shell environment"
|
|||
end
|
||||
end
|
||||
|
||||
# unset irrelavent variables
|
||||
# unset irrelevant variables
|
||||
deactivate nondestructive
|
||||
|
||||
set -gx VIRTUAL_ENV "__VENV_DIR__"
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
- (BOOL)shouldShowUI
|
||||
{
|
||||
// if this call comes before applicationDidFinishLaunching: we
|
||||
// should terminate immedeately after starting the script.
|
||||
// should terminate immediately after starting the script.
|
||||
if (!initial_action_done)
|
||||
should_terminate = YES;
|
||||
initial_action_done = YES;
|
||||
|
|
20
Misc/HISTORY
20
Misc/HISTORY
|
@ -1131,7 +1131,7 @@ Library
|
|||
and http.client. Patch by EungJun Yi.
|
||||
|
||||
- Issue #14777: tkinter may return undecoded UTF-8 bytes as a string when
|
||||
accessing the Tk clipboard. Modify clipboad_get() to first request type
|
||||
accessing the Tk clipboard. Modify clipboard_get() to first request type
|
||||
UTF8_STRING when no specific type is requested in an X11 windowing
|
||||
environment, falling back to the current default type STRING if that fails.
|
||||
Original patch by Thomas Kluyver.
|
||||
|
@ -5693,7 +5693,7 @@ Library
|
|||
for reading).
|
||||
|
||||
- hashlib has two new constant attributes: algorithms_guaranteed and
|
||||
algorithms_avaiable that respectively list the names of hash algorithms
|
||||
algorithms_available that respectively list the names of hash algorithms
|
||||
guaranteed to exist in all Python implementations and the names of hash
|
||||
algorithms available in the current process.
|
||||
|
||||
|
@ -7344,7 +7344,7 @@ Library
|
|||
- Issue #2846: Add support for gzip.GzipFile reading zero-padded files. Patch
|
||||
by Brian Curtin.
|
||||
|
||||
- Issue #7681: Use floor division in appropiate places in the wave module.
|
||||
- Issue #7681: Use floor division in appropriate places in the wave module.
|
||||
|
||||
- Issue #5372: Drop the reuse of .o files in Distutils' ccompiler (since
|
||||
Extension extra options may change the output without changing the .c
|
||||
|
@ -10921,7 +10921,7 @@ Platforms
|
|||
|
||||
- Support for BeOS and AtheOS was removed (according to PEP 11).
|
||||
|
||||
- Support for RiscOS, Irix, Tru64 was removed (alledgedly).
|
||||
- Support for RiscOS, Irix, Tru64 was removed (allegedly).
|
||||
|
||||
Tools/Demos
|
||||
-----------
|
||||
|
@ -12912,7 +12912,7 @@ Library
|
|||
- Bug #947906: An object oriented interface has been added to the calendar
|
||||
module. It's possible to generate HTML calendar now and the module can be
|
||||
called as a script (e.g. via ``python -mcalendar``). Localized month and
|
||||
weekday names can be ouput (even if an exotic encoding is used) using
|
||||
weekday names can be output (even if an exotic encoding is used) using
|
||||
special classes that use unicode.
|
||||
|
||||
Build
|
||||
|
@ -13295,7 +13295,7 @@ Library
|
|||
``True`` for ``!=``, and raises ``TypeError`` for other comparison
|
||||
operators. Because datetime is a subclass of date, comparing only the
|
||||
base class (date) members can still be done, if that's desired, by
|
||||
forcing using of the approprate date method; e.g.,
|
||||
forcing using of the appropriate date method; e.g.,
|
||||
``a_date.__eq__(a_datetime)`` is true if and only if the year, month
|
||||
and day members of ``a_date`` and ``a_datetime`` are equal.
|
||||
|
||||
|
@ -23770,7 +23770,7 @@ Netscape on Windows/Mac).
|
|||
|
||||
- copy.py: Make sure the objects returned by __getinitargs__() are
|
||||
kept alive (in the memo) to avoid a certain kind of nasty crash. (Not
|
||||
easily reproducable because it requires a later call to
|
||||
easily reproducible because it requires a later call to
|
||||
__getinitargs__() to return a tuple that happens to be allocated at
|
||||
the same address.)
|
||||
|
||||
|
@ -27402,7 +27402,7 @@ bullet-proof, after reports of (minor) trouble on certain platforms.
|
|||
There is now a script to patch Makefile and config.c to add a new
|
||||
optional built-in module: Addmodule.sh. Read the script before using!
|
||||
|
||||
Useing Addmodule.sh, all optional modules can now be configured at
|
||||
Using Addmodule.sh, all optional modules can now be configured at
|
||||
compile time using Configure.py, so there are no modules left that
|
||||
require dynamic loading.
|
||||
|
||||
|
@ -27833,9 +27833,9 @@ SOCKET: symbolic constant definitions for socket options
|
|||
|
||||
SUNAUDIODEV: symbolic constant definitions for sunaudiodef (sun only)
|
||||
|
||||
SV: symbolic constat definitions for sv (sgi only)
|
||||
SV: symbolic constant definitions for sv (sgi only)
|
||||
|
||||
CD: symbolic constat definitions for cd (sgi only)
|
||||
CD: symbolic constant definitions for cd (sgi only)
|
||||
|
||||
|
||||
New demos
|
||||
|
|
10
Misc/NEWS
10
Misc/NEWS
|
@ -4577,7 +4577,7 @@ Tools/Demos
|
|||
|
||||
- Issue #22120: For functions using an unsigned integer return converter,
|
||||
Argument Clinic now generates a cast to that type for the comparison
|
||||
to -1 in the generated code. (This supresses a compilation warning.)
|
||||
to -1 in the generated code. (This suppresses a compilation warning.)
|
||||
|
||||
- Issue #18974: Tools/scripts/diff.py now uses argparse instead of optparse.
|
||||
|
||||
|
@ -5677,7 +5677,7 @@ Core and Builtins
|
|||
|
||||
- Issue #19466: Clear the frames of daemon threads earlier during the
|
||||
Python shutdown to call objects destructors. So "unclosed file" resource
|
||||
warnings are now corretly emitted for daemon threads.
|
||||
warnings are now correctly emitted for daemon threads.
|
||||
|
||||
- Issue #19514: Deduplicate some _Py_IDENTIFIER declarations.
|
||||
Patch by Andrei Dorian Duma.
|
||||
|
@ -6607,7 +6607,7 @@ Library
|
|||
|
||||
- Issue #18709: Fix CVE-2013-4238. The SSL module now handles NULL bytes
|
||||
inside subjectAltName correctly. Formerly the module has used OpenSSL's
|
||||
GENERAL_NAME_print() function to get the string represention of ASN.1
|
||||
GENERAL_NAME_print() function to get the string representation of ASN.1
|
||||
strings for ``rfc822Name`` (email), ``dNSName`` (DNS) and
|
||||
``uniformResourceIdentifier`` (URI).
|
||||
|
||||
|
@ -6700,7 +6700,7 @@ IDLE
|
|||
Documentation
|
||||
-------------
|
||||
|
||||
- Issue #18743: Fix references to non-existant "StringIO" module.
|
||||
- Issue #18743: Fix references to non-existent "StringIO" module.
|
||||
|
||||
- Issue #18783: Removed existing mentions of Python long type in docstrings,
|
||||
error messages and comments.
|
||||
|
@ -7639,7 +7639,7 @@ Library
|
|||
specifically addresses a stack misalignment issue on x86 and issues on
|
||||
some more recent platforms.
|
||||
|
||||
- Issue #8862: Fixed curses cleanup when getkey is interrputed by a signal.
|
||||
- Issue #8862: Fixed curses cleanup when getkey is interrupted by a signal.
|
||||
|
||||
- Issue #17443: imaplib.IMAP4_stream was using the default unbuffered IO
|
||||
in subprocess, but the imap code assumes buffered IO. In Python2 this
|
||||
|
|
|
@ -238,7 +238,7 @@ typedef struct {
|
|||
StgDictObject function to a generic one.
|
||||
|
||||
Currently, PyCFuncPtr types have 'converters' and 'checker' entries in their
|
||||
type dict. They are only used to cache attributes from other entries, whihc
|
||||
type dict. They are only used to cache attributes from other entries, which
|
||||
is wrong.
|
||||
|
||||
One use case is the .value attribute that all simple types have. But some
|
||||
|
|
|
@ -771,7 +771,7 @@ generate_hash_name_list(void)
|
|||
/*
|
||||
* This macro generates constructor function definitions for specific
|
||||
* hash algorithms. These constructors are much faster than calling
|
||||
* the generic one passing it a python string and are noticably
|
||||
* the generic one passing it a python string and are noticeably
|
||||
* faster than calling a python new() wrapper. Thats important for
|
||||
* code that wants to make hashes of a bunch of small strings.
|
||||
*/
|
||||
|
|
|
@ -90,7 +90,7 @@ iobase_unsupported(const char *message)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
/* Positionning */
|
||||
/* Positioning */
|
||||
|
||||
PyDoc_STRVAR(iobase_seek_doc,
|
||||
"Change stream position.\n"
|
||||
|
|
|
@ -3781,7 +3781,7 @@ get_recursion_depth(PyObject *self, PyObject *args)
|
|||
{
|
||||
PyThreadState *tstate = PyThreadState_GET();
|
||||
|
||||
/* substract one to ignore the frame of the get_recursion_depth() call */
|
||||
/* subtract one to ignore the frame of the get_recursion_depth() call */
|
||||
return PyLong_FromLong(tstate->recursion_depth - 1);
|
||||
}
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ lock_dealloc(lockobject *self)
|
|||
/* Helper to acquire an interruptible lock with a timeout. If the lock acquire
|
||||
* is interrupted, signal handlers are run, and if they raise an exception,
|
||||
* PY_LOCK_INTR is returned. Otherwise, PY_LOCK_ACQUIRED or PY_LOCK_FAILURE
|
||||
* are returned, depending on whether the lock can be acquired withing the
|
||||
* are returned, depending on whether the lock can be acquired within the
|
||||
* timeout.
|
||||
*/
|
||||
static PyLockStatus
|
||||
|
|
|
@ -516,7 +516,7 @@ tracemalloc_realloc(void *ctx, void *ptr, size_t new_size)
|
|||
|
||||
if (tracemalloc_add_trace(ptr2, new_size) < 0) {
|
||||
/* Memory allocation failed. The error cannot be reported to
|
||||
the caller, because realloc() may already have shrinked the
|
||||
the caller, because realloc() may already have shrunk the
|
||||
memory block and so removed bytes.
|
||||
|
||||
This case is very unlikely: a hash entry has just been
|
||||
|
|
|
@ -1274,7 +1274,7 @@ count_set_bits(unsigned long n)
|
|||
|
||||
/* Divide-and-conquer factorial algorithm
|
||||
*
|
||||
* Based on the formula and psuedo-code provided at:
|
||||
* Based on the formula and pseudo-code provided at:
|
||||
* http://www.luschny.de/math/factorial/binarysplitfact.html
|
||||
*
|
||||
* Faster algorithms exist, but they're more complicated and depend on
|
||||
|
|
|
@ -6538,7 +6538,7 @@ PyInit__socket(void)
|
|||
PyModule_AddIntConstant(m, "SOMAXCONN", 5); /* Common value */
|
||||
#endif
|
||||
|
||||
/* Ancilliary message types */
|
||||
/* Ancillary message types */
|
||||
#ifdef SCM_RIGHTS
|
||||
PyModule_AddIntMacro(m, SCM_RIGHTS);
|
||||
#endif
|
||||
|
|
|
@ -1315,7 +1315,7 @@ unmarshal_code(PyObject *pathname, PyObject *data, time_t mtime)
|
|||
return code;
|
||||
}
|
||||
|
||||
/* Replace any occurances of "\r\n?" in the input string with "\n".
|
||||
/* Replace any occurrences of "\r\n?" in the input string with "\n".
|
||||
This converts DOS and Mac line endings to Unix line endings.
|
||||
Also append a trailing "\n" to be compatible with
|
||||
PyParser_SimpleParseFile(). Returns a new reference. */
|
||||
|
|
|
@ -506,7 +506,7 @@ bytearray_setslice_linear(PyByteArrayObject *self,
|
|||
|
||||
If growth < 0 and lo != 0, the operation is completed, but a
|
||||
MemoryError is still raised and the memory block is not
|
||||
shrinked. Otherwise, the bytearray is restored in its previous
|
||||
shrunk. Otherwise, the bytearray is restored in its previous
|
||||
state and a MemoryError is raised. */
|
||||
if (lo == 0) {
|
||||
self->ob_start += growth;
|
||||
|
|
|
@ -718,7 +718,7 @@ _PyCode_CheckLineNumber(PyCodeObject* co, int lasti, PyAddrPair *bounds)
|
|||
/* possible optimization: if f->f_lasti == instr_ub
|
||||
(likely to be a common case) then we already know
|
||||
instr_lb -- if we stored the matching value of p
|
||||
somwhere we could skip the first while loop. */
|
||||
somewhere we could skip the first while loop. */
|
||||
|
||||
/* See lnotab_notes.txt for the description of
|
||||
co_lnotab. A point to remember: increments to p
|
||||
|
|
|
@ -694,7 +694,7 @@ search doesn't reduce the quadratic data movement costs.
|
|||
|
||||
But in CPython's case, comparisons are extraordinarily expensive compared to
|
||||
moving data, and the details matter. Moving objects is just copying
|
||||
pointers. Comparisons can be arbitrarily expensive (can invoke arbitary
|
||||
pointers. Comparisons can be arbitrarily expensive (can invoke arbitrary
|
||||
user-supplied Python code), but even in simple cases (like 3 < 4) _all_
|
||||
decisions are made at runtime: what's the type of the left comparand? the
|
||||
type of the right? do they need to be coerced to a common type? where's the
|
||||
|
|
|
@ -368,7 +368,7 @@ PyLong_FromDouble(double dval)
|
|||
/* Checking for overflow in PyLong_AsLong is a PITA since C doesn't define
|
||||
* anything about what happens when a signed integer operation overflows,
|
||||
* and some compilers think they're doing you a favor by being "clever"
|
||||
* then. The bit pattern for the largest postive signed long is
|
||||
* then. The bit pattern for the largest positive signed long is
|
||||
* (unsigned long)LONG_MAX, and for the smallest negative signed long
|
||||
* it is abs(LONG_MIN), which we could write -(unsigned long)LONG_MIN.
|
||||
* However, some other compilers warn about applying unary minus to an
|
||||
|
|
|
@ -3759,7 +3759,7 @@ import_copyreg(void)
|
|||
/* Try to fetch cached copy of copyreg from sys.modules first in an
|
||||
attempt to avoid the import overhead. Previously this was implemented
|
||||
by storing a reference to the cached module in a static variable, but
|
||||
this broke when multiple embeded interpreters were in use (see issue
|
||||
this broke when multiple embedded interpreters were in use (see issue
|
||||
#17408 and #19088). */
|
||||
copyreg_module = PyDict_GetItemWithError(interp->modules, copyreg_str);
|
||||
if (copyreg_module != NULL) {
|
||||
|
|
|
@ -238,7 +238,7 @@ _PyCOND_WAIT_MS(PyCOND_T *cv, PyMUTEX_T *cs, DWORD ms)
|
|||
cv->waiting++;
|
||||
PyMUTEX_UNLOCK(cs);
|
||||
/* "lost wakeup bug" would occur if the caller were interrupted here,
|
||||
* but we are safe because we are using a semaphore wich has an internal
|
||||
* but we are safe because we are using a semaphore which has an internal
|
||||
* count.
|
||||
*/
|
||||
wait = WaitForSingleObjectEx(cv->sem, ms, FALSE);
|
||||
|
|
|
@ -118,7 +118,7 @@ typedef struct {
|
|||
} InternalFormatSpec;
|
||||
|
||||
#if 0
|
||||
/* Occassionally useful for debugging. Should normally be commented out. */
|
||||
/* Occasionally useful for debugging. Should normally be commented out. */
|
||||
static void
|
||||
DEBUG_PRINT_FORMAT_SPEC(InternalFormatSpec *format)
|
||||
{
|
||||
|
|
2
README
2
README
|
@ -68,7 +68,7 @@ workloads, as it has profiling instructions embedded inside.
|
|||
After this instrumented version of the interpreter is built, the Makefile
|
||||
will automatically run a training workload. This is necessary in order to
|
||||
profile the interpreter execution. Note also that any output, both stdout
|
||||
and stderr, that may appear at this step is supressed.
|
||||
and stderr, that may appear at this step is suppressed.
|
||||
|
||||
Finally, the last step is to rebuild the interpreter, using the information
|
||||
collected in the previous one. The end result will be a Python binary
|
||||
|
|
|
@ -7267,7 +7267,7 @@ $as_echo "$CC" >&6; }
|
|||
# Calculate an appropriate deployment target for this build:
|
||||
# The deployment target value is used explicitly to enable certain
|
||||
# features are enabled (such as builtin libedit support for readline)
|
||||
# through the use of Apple's Availabiliy Macros and is used as a
|
||||
# through the use of Apple's Availability Macros and is used as a
|
||||
# component of the string returned by distutils.get_platform().
|
||||
#
|
||||
# Use the value from:
|
||||
|
|
|
@ -1689,7 +1689,7 @@ yes)
|
|||
# Calculate an appropriate deployment target for this build:
|
||||
# The deployment target value is used explicitly to enable certain
|
||||
# features are enabled (such as builtin libedit support for readline)
|
||||
# through the use of Apple's Availabiliy Macros and is used as a
|
||||
# through the use of Apple's Availability Macros and is used as a
|
||||
# component of the string returned by distutils.get_platform().
|
||||
#
|
||||
# Use the value from:
|
||||
|
|
Loading…
Reference in New Issue