Skip to content

Commit

Permalink
Update 5 packages
Browse files Browse the repository at this point in the history
gdb (13.1-2 -> 13.2-1)
mingw-w64-i686-python (3.11.5-5 -> 3.11.6-1)
mingw-w64-x86_64-python (3.11.5-5 -> 3.11.6-1)
openssh (9.4p1-1 -> 9.5p1-1)
vim (9.0.1907-1 -> 9.0.1969-1)

Signed-off-by: Git for Windows Build Agent <ci@git-for-windows.build>
  • Loading branch information
Git for Windows Build Agent committed Oct 5, 2023
1 parent da1fe1e commit 3b21cce
Show file tree
Hide file tree
Showing 657 changed files with 8,595 additions and 8,775 deletions.
2 changes: 1 addition & 1 deletion etc/gdbinit
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
python
import sys
sys.path.insert(0, sys.path[0] + '/../../gcc-11.3.0/python')
sys.path.insert(0, sys.path[0] + '/../../gcc-13.2.0/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end
Binary file modified mingw32/bin/libpython3.11.dll
Binary file not shown.
Binary file modified mingw32/bin/libpython3.dll
Binary file not shown.
Binary file modified mingw32/bin/python.exe
Binary file not shown.
Binary file modified mingw32/bin/python3.11.exe
Binary file not shown.
Binary file modified mingw32/bin/python3.exe
Binary file not shown.
Binary file modified mingw32/bin/python3w.exe
Binary file not shown.
Binary file modified mingw32/bin/pythonw.exe
Binary file not shown.
6 changes: 6 additions & 0 deletions mingw32/include/python3.11/internal/pycore_pystate.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,12 @@ _Py_ThreadCanHandlePendingCalls(void)
}


#ifndef NDEBUG
extern int _PyThreadState_CheckConsistency(PyThreadState *tstate);
#endif

int _PyThreadState_MustExit(PyThreadState *tstate);

/* Variable and macro for in-line access to current thread
and interpreter state */

Expand Down
4 changes: 2 additions & 2 deletions mingw32/include/python3.11/patchlevel.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@
/*--start constants--*/
#define PY_MAJOR_VERSION 3
#define PY_MINOR_VERSION 11
#define PY_MICRO_VERSION 5
#define PY_MICRO_VERSION 6
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
#define PY_RELEASE_SERIAL 0

/* Version as a string */
#define PY_VERSION "3.11.5"
#define PY_VERSION "3.11.6"
/*--end constants--*/

/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
Expand Down
5 changes: 0 additions & 5 deletions mingw32/include/python3.11/pyport.h
Original file line number Diff line number Diff line change
Expand Up @@ -454,11 +454,6 @@ Please be conservative with adding new ones, document them and enclose them
in platform-specific #ifdefs.
**************************************************************************/

#ifdef SOLARIS
/* Unchecked */
extern int gethostname(char *, int);
#endif

#ifdef HAVE__GETPTY
#include <sys/types.h> /* we need to import mode_t */
extern char * _getpty(int *, int, mode_t, int);
Expand Down
2 changes: 1 addition & 1 deletion mingw32/lib/python3.11/Tools/scripts/freeze_modules.py
Original file line number Diff line number Diff line change
Expand Up @@ -581,7 +581,7 @@ def regen_makefile(modules):
pyfiles = []
frozenfiles = []
rules = ['']
deepfreezerules = ["Python/deepfreeze/deepfreeze.c: $(DEEPFREEZE_DEPS)",
deepfreezerules = ["$(DEEPFREEZE_C): $(DEEPFREEZE_DEPS)",
"\t$(PYTHON_FOR_FREEZE) $(srcdir)/Tools/scripts/deepfreeze.py \\"]
for src in _iter_sources(modules):
frozen_header = relpath_for_posix_display(src.frozenfile, ROOT_DIR)
Expand Down
9 changes: 8 additions & 1 deletion mingw32/lib/python3.11/Tools/scripts/patchcheck.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,21 @@
import untabify


def get_python_source_dir():
src_dir = sysconfig.get_config_var('abs_srcdir')
if not src_dir:
src_dir = sysconfig.get_config_var('srcdir')
return os.path.abspath(src_dir)


# Excluded directories which are copies of external libraries:
# don't check their coding style
EXCLUDE_DIRS = [os.path.join('Modules', '_ctypes', 'libffi_osx'),
os.path.join('Modules', '_ctypes', 'libffi_msvc'),
os.path.join('Modules', '_decimal', 'libmpdec'),
os.path.join('Modules', 'expat'),
os.path.join('Modules', 'zlib')]
SRCDIR = sysconfig.get_config_var('srcdir')
SRCDIR = get_python_source_dir()


def n_files_str(count):
Expand Down
14 changes: 10 additions & 4 deletions mingw32/lib/python3.11/Tools/scripts/verify_ensurepip_wheels.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#! /usr/bin/env python3
#!/usr/bin/env python3

"""
Compare checksums for wheels in :mod:`ensurepip` against the Cheeseshop.
Expand Down Expand Up @@ -35,11 +35,17 @@ def print_error(file_path: str, message: str) -> None:

def verify_wheel(package_name: str) -> bool:
# Find the package on disk
package_path = next(WHEEL_DIR.glob(f"{package_name}*.whl"), None)
if not package_path:
print_error("", f"Could not find a {package_name} wheel on disk.")
package_paths = list(WHEEL_DIR.glob(f"{package_name}*.whl"))
if len(package_paths) != 1:
if package_paths:
for p in package_paths:
print_error(p, f"Found more than one wheel for package {package_name}.")
else:
print_error("", f"Could not find a {package_name} wheel on disk.")
return False

package_path = package_paths[0]

print(f"Verifying checksum for {package_path}.")

# Find the version of the package used by ensurepip
Expand Down
173 changes: 87 additions & 86 deletions mingw32/lib/python3.11/_sysconfigdata__win32_.py

Large diffs are not rendered by default.

18 changes: 17 additions & 1 deletion mingw32/lib/python3.11/ast.py
Original file line number Diff line number Diff line change
Expand Up @@ -1175,13 +1175,29 @@ def visit_JoinedStr(self, node):

new_fstring_parts = []
quote_types = list(_ALL_QUOTES)
fallback_to_repr = False
for value, is_constant in fstring_parts:
value, quote_types = self._str_literal_helper(
value, new_quote_types = self._str_literal_helper(
value,
quote_types=quote_types,
escape_special_whitespace=is_constant,
)
new_fstring_parts.append(value)
if set(new_quote_types).isdisjoint(quote_types):
fallback_to_repr = True
break
quote_types = new_quote_types

if fallback_to_repr:
# If we weren't able to find a quote type that works for all parts
# of the JoinedStr, fallback to using repr and triple single quotes.
quote_types = ["'''"]
new_fstring_parts.clear()
for value, is_constant in fstring_parts:
value = repr('"' + value) # force repr to use single quotes
expected_prefix = "'\""
assert value.startswith(expected_prefix), repr(value)
new_fstring_parts.append(value[len(expected_prefix):-1])

value = "".join(new_fstring_parts)
quote_type = quote_types[0]
Expand Down
5 changes: 2 additions & 3 deletions mingw32/lib/python3.11/asyncio/streams.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,8 @@ async def start_server(client_connected_cb, host=None, port=None, *,
positional host and port, with various optional keyword arguments
following. The return value is the same as loop.create_server().
Additional optional keyword arguments are loop (to set the event loop
instance to use) and limit (to set the buffer limit passed to the
StreamReader).
Additional optional keyword argument is limit (to set the buffer
limit passed to the StreamReader).
The return value is the same as loop.create_server(), i.e. a
Server object which can be used to stop the service.
Expand Down
12 changes: 7 additions & 5 deletions mingw32/lib/python3.11/asyncio/subprocess.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,14 +147,16 @@ def kill(self):

async def _feed_stdin(self, input):
debug = self._loop.get_debug()
self.stdin.write(input)
if debug:
logger.debug(
'%r communicate: feed stdin (%s bytes)', self, len(input))
try:
self.stdin.write(input)
if debug:
logger.debug(
'%r communicate: feed stdin (%s bytes)', self, len(input))

await self.stdin.drain()
except (BrokenPipeError, ConnectionResetError) as exc:
# communicate() ignores BrokenPipeError and ConnectionResetError
# communicate() ignores BrokenPipeError and ConnectionResetError.
# write() and drain() can raise these exceptions.
if debug:
logger.debug('%r communicate: stdin got %r', self, exc)

Expand Down
24 changes: 17 additions & 7 deletions mingw32/lib/python3.11/asyncio/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,15 +81,25 @@ class Task(futures._PyFuture): # Inherit Python Task implementation
"""A coroutine wrapped in a Future."""

# An important invariant maintained while a Task not done:
# _fut_waiter is either None or a Future. The Future
# can be either done() or not done().
# The task can be in any of 3 states:
#
# - Either _fut_waiter is None, and _step() is scheduled;
# - or _fut_waiter is some Future, and _step() is *not* scheduled.
# - 1: _fut_waiter is not None and not _fut_waiter.done():
# __step() is *not* scheduled and the Task is waiting for _fut_waiter.
# - 2: (_fut_waiter is None or _fut_waiter.done()) and __step() is scheduled:
# the Task is waiting for __step() to be executed.
# - 3: _fut_waiter is None and __step() is *not* scheduled:
# the Task is currently executing (in __step()).
#
# The only transition from the latter to the former is through
# _wakeup(). When _fut_waiter is not None, one of its callbacks
# must be _wakeup().

# If False, don't log a message if the task is destroyed whereas its
# * In state 1, one of the callbacks of __fut_waiter must be __wakeup().
# * The transition from 1 to 2 happens when _fut_waiter becomes done(),
# as it schedules __wakeup() to be called (which calls __step() so
# we way that __step() is scheduled).
# * It transitions from 2 to 3 when __step() is executed, and it clears
# _fut_waiter to None.

# If False, don't log a message if the task is destroyed while its
# status is still pending
_log_destroy_pending = True

Expand Down
2 changes: 1 addition & 1 deletion mingw32/lib/python3.11/calendar.py
Original file line number Diff line number Diff line change
Expand Up @@ -693,7 +693,7 @@ def main(args):
parser.add_argument(
"-L", "--locale",
default=None,
help="locale to be used from month and weekday names"
help="locale to use for month and weekday names"
)
parser.add_argument(
"-e", "--encoding",
Expand Down
12 changes: 12 additions & 0 deletions mingw32/lib/python3.11/codecs.py
Original file line number Diff line number Diff line change
Expand Up @@ -414,6 +414,9 @@ def __enter__(self):
def __exit__(self, type, value, tb):
self.stream.close()

def __reduce_ex__(self, proto):
raise TypeError("can't serialize %s" % self.__class__.__name__)

###

class StreamReader(Codec):
Expand Down Expand Up @@ -663,6 +666,9 @@ def __enter__(self):
def __exit__(self, type, value, tb):
self.stream.close()

def __reduce_ex__(self, proto):
raise TypeError("can't serialize %s" % self.__class__.__name__)

###

class StreamReaderWriter:
Expand Down Expand Up @@ -750,6 +756,9 @@ def __enter__(self):
def __exit__(self, type, value, tb):
self.stream.close()

def __reduce_ex__(self, proto):
raise TypeError("can't serialize %s" % self.__class__.__name__)

###

class StreamRecoder:
Expand Down Expand Up @@ -866,6 +875,9 @@ def __enter__(self):
def __exit__(self, type, value, tb):
self.stream.close()

def __reduce_ex__(self, proto):
raise TypeError("can't serialize %s" % self.__class__.__name__)

### Shortcuts

def open(filename, mode='r', encoding=None, errors='strict', buffering=-1):
Expand Down
23 changes: 20 additions & 3 deletions mingw32/lib/python3.11/concurrent/futures/process.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,11 @@ def __init__(self):
self._reader, self._writer = mp.Pipe(duplex=False)

def close(self):
# Please note that we do not take the shutdown lock when
# calling clear() (to avoid deadlocking) so this method can
# only be called safely from the same thread as all calls to
# clear() even if you hold the shutdown lock. Otherwise we
# might try to read from the closed pipe.
if not self._closed:
self._closed = True
self._writer.close()
Expand Down Expand Up @@ -424,8 +429,12 @@ def wait_result_broken_or_wakeup(self):
elif wakeup_reader in ready:
is_broken = False

with self.shutdown_lock:
self.thread_wakeup.clear()
# No need to hold the _shutdown_lock here because:
# 1. we're the only thread to use the wakeup reader
# 2. we're also the only thread to call thread_wakeup.close()
# 3. we want to avoid a possible deadlock when both reader and writer
# would block (gh-105829)
self.thread_wakeup.clear()

return result_item, is_broken, cause

Expand Down Expand Up @@ -501,6 +510,11 @@ def terminate_broken(self, cause):
# https://github.com/python/cpython/issues/94777
self.call_queue._reader.close()

# gh-107219: Close the connection writer which can unblock
# Queue._feed() if it was stuck in send_bytes().
if sys.platform == 'win32':
self.call_queue._writer.close()

# clean up resources
self.join_executor_internals()

Expand Down Expand Up @@ -704,7 +718,10 @@ def __init__(self, max_workers=None, mp_context=None,
# as it could result in a deadlock if a worker process dies with the
# _result_queue write lock still acquired.
#
# _shutdown_lock must be locked to access _ThreadWakeup.
# _shutdown_lock must be locked to access _ThreadWakeup.close() and
# .wakeup(). Care must also be taken to not call clear or close from
# more than one thread since _ThreadWakeup.clear() is not protected by
# the _shutdown_lock
self._executor_manager_thread_wakeup = _ThreadWakeup()

# Create communication channels for the executor
Expand Down
Loading

0 comments on commit 3b21cce

Please sign in to comment.