upgrade site to 3.14.2

This commit is contained in:
Jeong, YunWon committed 2026-01-17 19:21:10 +09:00
1 parent ea1e60e9ca
commit 7594ef5121
2 files changed
+40 -21

No files matched your search

Vendored
+18 -12
View File
@@ -73,7 +73,7 @@ import sys
import os
import builtins
import _sitebuiltins
import io
import _io as io
import stat
import errno
@@ -95,6 +95,12 @@ def _trace(message):
print(message, file=sys.stderr)
def _warn(*args, **kwargs):
import warnings
warnings.warn(*args, **kwargs)
def makepath(*paths):
dir = os.path.join(*paths)
try:
@@ -444,9 +450,9 @@ def setcopyright():
"""Set 'copyright' and 'credits' in builtins"""
builtins.copyright = _sitebuiltins._Printer("copyright", sys.copyright)
builtins.credits = _sitebuiltins._Printer("credits", """\
Thanks to CWI, CNRI, BeOpen, Zope Corporation, the Python Software
Foundation, and a cast of thousands for supporting Python
development. See www.python.org for more information.""")
Thanks to CWI, CNRI, BeOpen, Zope Corporation, the Python Software
Foundation, and a cast of thousands for supporting Python
development. See www.python.org for more information.""")
files, dirs = [], []
# Not all modules are required to have a __file__ attribute. See
# PEP 420 for more details.
@@ -574,7 +580,7 @@ def register_readline():
def write_history():
try:
readline_module.write_history_file(history)
except (FileNotFoundError, PermissionError):
except FileNotFoundError, PermissionError:
# home directory does not exist or is not writable
# https://bugs.python.org/issue19891
pass
@@ -626,17 +632,17 @@ def venv(known_paths):
elif key == 'home':
sys._home = value
sys.prefix = sys.exec_prefix = site_prefix
if sys.prefix != site_prefix:
_warn(f'Unexpected value in sys.prefix, expected {site_prefix}, got {sys.prefix}', RuntimeWarning)
if sys.exec_prefix != site_prefix:
_warn(f'Unexpected value in sys.exec_prefix, expected {site_prefix}, got {sys.exec_prefix}', RuntimeWarning)
# Doing this here ensures venv takes precedence over user-site
addsitepackages(known_paths, [sys.prefix])
# addsitepackages will process site_prefix again if its in PREFIXES,
# but that's ok; known_paths will prevent anything being added twice
if system_site == "true":
PREFIXES.insert(0, sys.prefix)
PREFIXES += [sys.base_prefix, sys.base_exec_prefix]
else:
PREFIXES = [sys.prefix]
ENABLE_USER_SITE = False
return known_paths
@@ -646,7 +652,7 @@ def execsitecustomize():
"""Run custom site specific code, if available."""
try:
try:
import sitecustomize
import sitecustomize # noqa: F401
except ImportError as exc:
if exc.name == 'sitecustomize':
pass
@@ -666,7 +672,7 @@ def execusercustomize():
"""Run custom user specific code, if available."""
try:
try:
import usercustomize
import usercustomize # noqa: F401
except ImportError as exc:
if exc.name == 'usercustomize':
pass
+22 -9
View File
@@ -8,6 +8,7 @@ import unittest
import test.support
from test import support
from test.support.script_helper import assert_python_ok
from test.support import import_helper
from test.support import os_helper
from test.support import socket_helper
from test.support import captured_stderr
@@ -308,8 +309,7 @@ class HelperFunctionsTests(unittest.TestCase):
with EnvironmentVarGuard() as environ:
environ['PYTHONUSERBASE'] = 'xoxo'
self.assertTrue(site.getuserbase().startswith('xoxo'),
site.getuserbase())
self.assertTrue(site.getuserbase().startswith('xoxo'))
@unittest.skipUnless(HAS_USER_SITE, 'need user site')
def test_getusersitepackages(self):
@@ -319,7 +319,7 @@ class HelperFunctionsTests(unittest.TestCase):
# the call sets USER_BASE *and* USER_SITE
self.assertEqual(site.USER_SITE, user_site)
self.assertTrue(user_site.startswith(site.USER_BASE), user_site)
self.assertTrue(user_site.startswith(site.USER_BASE))
self.assertEqual(site.USER_BASE, site.getuserbase())
def test_getsitepackages(self):
@@ -362,11 +362,10 @@ class HelperFunctionsTests(unittest.TestCase):
environ.unset('PYTHONUSERBASE', 'APPDATA')
user_base = site.getuserbase()
self.assertTrue(user_base.startswith('~' + os.sep),
user_base)
self.assertTrue(user_base.startswith('~' + os.sep))
user_site = site.getusersitepackages()
self.assertTrue(user_site.startswith(user_base), user_site)
self.assertTrue(user_site.startswith(user_base))
with mock.patch('os.path.isdir', return_value=False) as mock_isdir, \
mock.patch.object(site, 'addsitedir') as mock_addsitedir, \
@@ -515,7 +514,7 @@ class ImportSideEffectTests(unittest.TestCase):
# If sitecustomize is available, it should have been imported.
if "sitecustomize" not in sys.modules:
try:
import sitecustomize
import sitecustomize # noqa: F401
except ImportError:
pass
else:
@@ -578,6 +577,17 @@ class ImportSideEffectTests(unittest.TestCase):
code = e.code
self.assertEqual(code, 200, msg="Can't find " + url)
@support.cpython_only
def test_lazy_imports(self):
import_helper.ensure_lazy_imports("site", [
"io",
"locale",
"traceback",
"atexit",
"warnings",
"textwrap",
])
class StartupImportTests(unittest.TestCase):
@@ -843,12 +853,15 @@ class CommandLineTests(unittest.TestCase):
return 10, None
def invoke_command_line(self, *args):
args = ["-m", "site", *args]
cmd_args = []
if sys.flags.no_user_site:
cmd_args.append("-s")
cmd_args.extend(["-m", "site", *args])
with EnvironmentVarGuard() as env:
env["PYTHONUTF8"] = "1"
env["PYTHONIOENCODING"] = "utf-8"
proc = spawn_python(*args, text=True, env=env,
proc = spawn_python(*cmd_args, text=True, env=env,
encoding='utf-8', errors='replace')
output = kill_python(proc)