Skip to content

Commit

Permalink
git subrepo pull uno
Browse files Browse the repository at this point in the history
subrepo:
  subdir:   "uno"
  merged:   "a2c4f2e"
upstream:
  origin:   "https://github.com/prrvchr/uno.git"
  branch:   "main"
  commit:   "a2c4f2e"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"
  • Loading branch information
prrvchr committed Dec 27, 2023
1 parent 9f26fa0 commit 2e0d8f3
Show file tree
Hide file tree
Showing 298 changed files with 49,409 additions and 13,653 deletions.
4 changes: 2 additions & 2 deletions uno/.gitrepo
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
[subrepo]
remote = https://github.com/prrvchr/uno.git
branch = main
commit = 7ab861e71a9b1ceea91630a678fa70d34dc54c53
parent = 5f7c7ac41f570dfba548edf6382659489dc1bf2e
commit = a2c4f2e226b9b557738468062e1b832cadf13bd3
parent = 9f26fa0c585e5892ffba2df651237b55ed240186
method = merge
cmdver = 0.4.3
Binary file added uno/lib/python/_cffi_backend.cp38-win32.pyd
Binary file not shown.
Binary file added uno/lib/python/_cffi_backend.cp38-win_amd64.pyd
Binary file not shown.
Binary file not shown.
227 changes: 227 additions & 0 deletions uno/lib/python/_distutils_hack/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
# don't import any costly modules
import sys
import os


is_pypy = '__pypy__' in sys.builtin_module_names


def warn_distutils_present():
if 'distutils' not in sys.modules:
return
if is_pypy and sys.version_info < (3, 7):
# PyPy for 3.6 unconditionally imports distutils, so bypass the warning
# https://foss.heptapod.net/pypy/pypy/-/blob/be829135bc0d758997b3566062999ee8b23872b4/lib-python/3/site.py#L250
return
import warnings

warnings.warn(
"Distutils was imported before Setuptools, but importing Setuptools "
"also replaces the `distutils` module in `sys.modules`. This may lead "
"to undesirable behaviors or errors. To avoid these issues, avoid "
"using distutils directly, ensure that setuptools is installed in the "
"traditional way (e.g. not an editable install), and/or make sure "
"that setuptools is always imported before distutils."
)


def clear_distutils():
if 'distutils' not in sys.modules:
return
import warnings

warnings.warn("Setuptools is replacing distutils.")
mods = [
name
for name in sys.modules
if name == "distutils" or name.startswith("distutils.")
]
for name in mods:
del sys.modules[name]


def enabled():
"""
Allow selection of distutils by environment variable.
"""
which = os.environ.get('SETUPTOOLS_USE_DISTUTILS', 'local')
return which == 'local'


def ensure_local_distutils():
import importlib

clear_distutils()

# With the DistutilsMetaFinder in place,
# perform an import to cause distutils to be
# loaded from setuptools._distutils. Ref #2906.
with shim():
importlib.import_module('distutils')

# check that submodules load as expected
core = importlib.import_module('distutils.core')
assert '_distutils' in core.__file__, core.__file__
assert 'setuptools._distutils.log' not in sys.modules


def do_override():
"""
Ensure that the local copy of distutils is preferred over stdlib.
See https://github.com/pypa/setuptools/issues/417#issuecomment-392298401
for more motivation.
"""
if enabled():
warn_distutils_present()
ensure_local_distutils()


class _TrivialRe:
def __init__(self, *patterns):
self._patterns = patterns

def match(self, string):
return all(pat in string for pat in self._patterns)


class DistutilsMetaFinder:
def find_spec(self, fullname, path, target=None):
# optimization: only consider top level modules and those
# found in the CPython test suite.
if path is not None and not fullname.startswith('test.'):
return

method_name = 'spec_for_{fullname}'.format(**locals())
method = getattr(self, method_name, lambda: None)
return method()

def spec_for_distutils(self):
if self.is_cpython():
return

import importlib
import importlib.abc
import importlib.util

try:
mod = importlib.import_module('setuptools._distutils')
except Exception:
# There are a couple of cases where setuptools._distutils
# may not be present:
# - An older Setuptools without a local distutils is
# taking precedence. Ref #2957.
# - Path manipulation during sitecustomize removes
# setuptools from the path but only after the hook
# has been loaded. Ref #2980.
# In either case, fall back to stdlib behavior.
return

class DistutilsLoader(importlib.abc.Loader):
def create_module(self, spec):
mod.__name__ = 'distutils'
return mod

def exec_module(self, module):
pass

return importlib.util.spec_from_loader(
'distutils', DistutilsLoader(), origin=mod.__file__
)

@staticmethod
def is_cpython():
"""
Suppress supplying distutils for CPython (build and tests).
Ref #2965 and #3007.
"""
return os.path.isfile('pybuilddir.txt')

def spec_for_pip(self):
"""
Ensure stdlib distutils when running under pip.
See pypa/pip#8761 for rationale.
"""
if sys.version_info >= (3, 12) or self.pip_imported_during_build():
return
clear_distutils()
self.spec_for_distutils = lambda: None

@classmethod
def pip_imported_during_build(cls):
"""
Detect if pip is being imported in a build script. Ref #2355.
"""
import traceback

return any(
cls.frame_file_is_setup(frame) for frame, line in traceback.walk_stack(None)
)

@staticmethod
def frame_file_is_setup(frame):
"""
Return True if the indicated frame suggests a setup.py file.
"""
# some frames may not have __file__ (#2940)
return frame.f_globals.get('__file__', '').endswith('setup.py')

def spec_for_sensitive_tests(self):
"""
Ensure stdlib distutils when running select tests under CPython.
python/cpython#91169
"""
clear_distutils()
self.spec_for_distutils = lambda: None

sensitive_tests = (
[
'test.test_distutils',
'test.test_peg_generator',
'test.test_importlib',
]
if sys.version_info < (3, 10)
else [
'test.test_distutils',
]
)


for name in DistutilsMetaFinder.sensitive_tests:
setattr(
DistutilsMetaFinder,
f'spec_for_{name}',
DistutilsMetaFinder.spec_for_sensitive_tests,
)


DISTUTILS_FINDER = DistutilsMetaFinder()


def add_shim():
DISTUTILS_FINDER in sys.meta_path or insert_shim()


class shim:
def __enter__(self):
insert_shim()

def __exit__(self, exc, value, tb):
_remove_shim()


def insert_shim():
sys.meta_path.insert(0, DISTUTILS_FINDER)


def _remove_shim():
try:
sys.meta_path.remove(DISTUTILS_FINDER)
except ValueError:
pass


if sys.version_info < (3, 12):
# DistutilsMetaFinder can only be disabled in Python < 3.12 (PEP 632)
remove_shim = _remove_shim
1 change: 1 addition & 0 deletions uno/lib/python/_distutils_hack/override.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__import__('_distutils_hack').do_override()
51 changes: 11 additions & 40 deletions uno/lib/python/attr/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,55 +78,26 @@ def _make_getattr(mod_name: str) -> Callable:
"""

def __getattr__(name: str) -> str:
dunder_to_metadata = {
"__title__": "Name",
"__copyright__": "",
"__version__": "version",
"__version_info__": "version",
"__description__": "summary",
"__uri__": "",
"__url__": "",
"__author__": "",
"__email__": "",
"__license__": "license",
}
if name not in dunder_to_metadata.keys():
raise AttributeError(f"module {mod_name} has no attribute {name}")

import sys
import warnings

if sys.version_info < (3, 8):
from importlib_metadata import metadata
else:
from importlib.metadata import metadata

if name != "__version_info__":
warnings.warn(
f"Accessing {mod_name}.{name} is deprecated and will be "
"removed in a future release. Use importlib.metadata directly "
"to query for attrs's packaging metadata.",
DeprecationWarning,
stacklevel=2,
)

meta = metadata("attrs")
if name == "__license__":
return "MIT"
elif name == "__copyright__":
return "Copyright (c) 2015 Hynek Schlawack"
elif name in ("__uri__", "__url__"):
return meta["Project-URL"].split(" ", 1)[-1]
elif name == "__version_info__":
return VersionInfo._from_version_string(meta["version"])
return "https://github.com/denis-ryzhkov/attr"
elif name in ("__version__", "__version_info__"):
return "23.1.0"
elif name == "__author__":
return meta["Author-email"].rsplit(" ", 1)[0]
return "Denis Ryzhkov"
elif name == "__email__":
return meta["Author-email"].rsplit("<", 1)[1][:-1]

return meta[dunder_to_metadata[name]]
return "denisr@denisr.com"
elif name == "__title__":
return "attr"
elif name == "__description__":
return "Simple decorator to set attributes of target function or class in a DRY way."
else:
raise AttributeError(f"module {mod_name} has no attribute {name}")

return __getattr__


__getattr__ = _make_getattr(__name__)
10 changes: 10 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/lextab_es5_py3_ply3_10.py

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/lextab_es5_py3_ply3_11.py

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/lextab_es5_py3_ply3_6.py

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/lextab_es5_py3_ply3_8.py

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/lextab_es5_py3_ply3_9.py

Large diffs are not rendered by default.

369 changes: 369 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/yacctab_es5_py3_ply3_10.py

Large diffs are not rendered by default.

370 changes: 370 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/yacctab_es5_py3_ply3_11.py

Large diffs are not rendered by default.

369 changes: 369 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/yacctab_es5_py3_ply3_6.py

Large diffs are not rendered by default.

369 changes: 369 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/yacctab_es5_py3_ply3_8.py

Large diffs are not rendered by default.

369 changes: 369 additions & 0 deletions uno/lib/python/calmjs/parse/parsers/yacctab_es5_py3_ply3_9.py

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion uno/lib/python/certifi/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from .core import contents, where

__all__ = ["contents", "where"]
__version__ = "2023.05.07"
__version__ = "2023.11.17"
Loading

0 comments on commit 2e0d8f3

Please sign in to comment.