diff options
author | robot-piglet <robot-piglet@yandex-team.com> | 2024-12-18 10:16:08 +0300 |
---|---|---|
committer | robot-piglet <robot-piglet@yandex-team.com> | 2024-12-18 10:29:14 +0300 |
commit | 691a35e0546dbd763dd51657b1a3816a3c40e094 (patch) | |
tree | 651c5813885adb4fa8993f44b364a0a7a148e7ad /contrib/python | |
parent | 72b6bf1f88ac4ec4ed2adf6dda915278c5d2b924 (diff) | |
download | ydb-691a35e0546dbd763dd51657b1a3816a3c40e094.tar.gz |
Intermediate changes
commit_hash:1a5e9f4585838729a12fdcba5306caddb2c0c7ac
Diffstat (limited to 'contrib/python')
25 files changed, 486 insertions, 305 deletions
diff --git a/contrib/python/fonttools/.dist-info/METADATA b/contrib/python/fonttools/.dist-info/METADATA index 8ad26257c5..9460888006 100644 --- a/contrib/python/fonttools/.dist-info/METADATA +++ b/contrib/python/fonttools/.dist-info/METADATA @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: fonttools -Version: 4.55.0 +Version: 4.55.1 Summary: Tools to manipulate font files Home-page: http://github.com/fonttools/fonttools Author: Just van Rossum @@ -30,48 +30,48 @@ Classifier: Topic :: Multimedia :: Graphics Classifier: Topic :: Multimedia :: Graphics :: Graphics Conversion Requires-Python: >=3.8 License-File: LICENSE -Provides-Extra: all -Requires-Dist: fs <3,>=2.2.0 ; extra == 'all' -Requires-Dist: lxml >=4.0 ; extra == 'all' -Requires-Dist: zopfli >=0.1.4 ; extra == 'all' -Requires-Dist: lz4 >=1.7.4.2 ; extra == 'all' -Requires-Dist: pycairo ; extra == 'all' -Requires-Dist: matplotlib ; extra == 'all' -Requires-Dist: sympy ; extra == 'all' -Requires-Dist: skia-pathops >=0.5.0 ; extra == 'all' -Requires-Dist: uharfbuzz >=0.23.0 ; extra == 'all' -Requires-Dist: brotlicffi >=0.8.0 ; (platform_python_implementation != "CPython") and extra == 'all' -Requires-Dist: scipy ; (platform_python_implementation != "PyPy") and extra == 'all' -Requires-Dist: brotli >=1.0.1 ; (platform_python_implementation == "CPython") and extra == 'all' -Requires-Dist: munkres ; (platform_python_implementation == "PyPy") and extra == 'all' -Requires-Dist: unicodedata2 >=15.1.0 ; (python_version <= "3.12") and extra == 'all' -Requires-Dist: xattr ; (sys_platform == "darwin") and extra == 'all' +Provides-Extra: ufo +Requires-Dist: fs<3,>=2.2.0; extra == "ufo" +Provides-Extra: lxml +Requires-Dist: lxml>=4.0; extra == "lxml" +Provides-Extra: woff +Requires-Dist: brotli>=1.0.1; platform_python_implementation == "CPython" and extra == "woff" +Requires-Dist: brotlicffi>=0.8.0; platform_python_implementation != "CPython" and extra == "woff" +Requires-Dist: zopfli>=0.1.4; extra == "woff" +Provides-Extra: unicode +Requires-Dist: unicodedata2>=15.1.0; python_version <= "3.12" and extra == "unicode" Provides-Extra: graphite -Requires-Dist: lz4 >=1.7.4.2 ; extra == 'graphite' +Requires-Dist: lz4>=1.7.4.2; extra == "graphite" Provides-Extra: interpolatable -Requires-Dist: pycairo ; extra == 'interpolatable' -Requires-Dist: scipy ; (platform_python_implementation != "PyPy") and extra == 'interpolatable' -Requires-Dist: munkres ; (platform_python_implementation == "PyPy") and extra == 'interpolatable' -Provides-Extra: lxml -Requires-Dist: lxml >=4.0 ; extra == 'lxml' -Provides-Extra: pathops -Requires-Dist: skia-pathops >=0.5.0 ; extra == 'pathops' +Requires-Dist: scipy; platform_python_implementation != "PyPy" and extra == "interpolatable" +Requires-Dist: munkres; platform_python_implementation == "PyPy" and extra == "interpolatable" +Requires-Dist: pycairo; extra == "interpolatable" Provides-Extra: plot -Requires-Dist: matplotlib ; extra == 'plot' -Provides-Extra: repacker -Requires-Dist: uharfbuzz >=0.23.0 ; extra == 'repacker' +Requires-Dist: matplotlib; extra == "plot" Provides-Extra: symfont -Requires-Dist: sympy ; extra == 'symfont' +Requires-Dist: sympy; extra == "symfont" Provides-Extra: type1 -Requires-Dist: xattr ; (sys_platform == "darwin") and extra == 'type1' -Provides-Extra: ufo -Requires-Dist: fs <3,>=2.2.0 ; extra == 'ufo' -Provides-Extra: unicode -Requires-Dist: unicodedata2 >=15.1.0 ; (python_version <= "3.12") and extra == 'unicode' -Provides-Extra: woff -Requires-Dist: zopfli >=0.1.4 ; extra == 'woff' -Requires-Dist: brotlicffi >=0.8.0 ; (platform_python_implementation != "CPython") and extra == 'woff' -Requires-Dist: brotli >=1.0.1 ; (platform_python_implementation == "CPython") and extra == 'woff' +Requires-Dist: xattr; sys_platform == "darwin" and extra == "type1" +Provides-Extra: pathops +Requires-Dist: skia-pathops>=0.5.0; extra == "pathops" +Provides-Extra: repacker +Requires-Dist: uharfbuzz>=0.23.0; extra == "repacker" +Provides-Extra: all +Requires-Dist: fs<3,>=2.2.0; extra == "all" +Requires-Dist: lxml>=4.0; extra == "all" +Requires-Dist: brotli>=1.0.1; platform_python_implementation == "CPython" and extra == "all" +Requires-Dist: brotlicffi>=0.8.0; platform_python_implementation != "CPython" and extra == "all" +Requires-Dist: zopfli>=0.1.4; extra == "all" +Requires-Dist: unicodedata2>=15.1.0; python_version <= "3.12" and extra == "all" +Requires-Dist: lz4>=1.7.4.2; extra == "all" +Requires-Dist: scipy; platform_python_implementation != "PyPy" and extra == "all" +Requires-Dist: munkres; platform_python_implementation == "PyPy" and extra == "all" +Requires-Dist: pycairo; extra == "all" +Requires-Dist: matplotlib; extra == "all" +Requires-Dist: sympy; extra == "all" +Requires-Dist: xattr; sys_platform == "darwin" and extra == "all" +Requires-Dist: skia-pathops>=0.5.0; extra == "all" +Requires-Dist: uharfbuzz>=0.23.0; extra == "all" |CI Build Status| |Coverage Status| |PyPI| |Gitter Chat| @@ -377,6 +377,15 @@ Have fun! Changelog ~~~~~~~~~ +4.55.1 (released 2024-12-02) +---------------------------- + +- [ttGlyphSet] Support VARC CFF2 fonts (#3683) +- [DecomposedTransform] Document and implement always skewY == 0 (#3697) +- [varLib] "Fix" cython iup issue? (#3704) +- Cython minor refactor (#3705) + + 4.55.0 (released 2024-11-14) ---------------------------- diff --git a/contrib/python/fonttools/fontTools/__init__.py b/contrib/python/fonttools/fontTools/__init__.py index 502ca5cec6..6aa5f3ad59 100644 --- a/contrib/python/fonttools/fontTools/__init__.py +++ b/contrib/python/fonttools/fontTools/__init__.py @@ -3,6 +3,6 @@ from fontTools.misc.loggingTools import configLogger log = logging.getLogger(__name__) -version = __version__ = "4.55.0" +version = __version__ = "4.55.1" __all__ = ["version", "log", "configLogger"] diff --git a/contrib/python/fonttools/fontTools/cffLib/transforms.py b/contrib/python/fonttools/fontTools/cffLib/transforms.py index 5b474a7cd8..82c70f81f4 100644 --- a/contrib/python/fonttools/fontTools/cffLib/transforms.py +++ b/contrib/python/fonttools/fontTools/cffLib/transforms.py @@ -457,7 +457,12 @@ def remove_unused_subroutines(cff): if subrs == font.GlobalSubrs: if not hasattr(font, "FDArray") and hasattr(font.Private, "Subrs"): local_subrs = font.Private.Subrs - elif hasattr(font, "FDArray") and len(font.FDArray) == 1: + elif ( + hasattr(font, "FDArray") + and len(font.FDArray) == 1 + and hasattr(font.FDArray[0].Private, "Subrs") + ): + # Technically we shouldn't do this. But I've run into fonts that do it. local_subrs = font.FDArray[0].Private.Subrs else: local_subrs = None diff --git a/contrib/python/fonttools/fontTools/cu2qu/cu2qu.py b/contrib/python/fonttools/fontTools/cu2qu/cu2qu.py index e620b48a55..c0d4cf947b 100644 --- a/contrib/python/fonttools/fontTools/cu2qu/cu2qu.py +++ b/contrib/python/fonttools/fontTools/cu2qu/cu2qu.py @@ -17,13 +17,10 @@ try: import cython - - COMPILED = cython.compiled except (AttributeError, ImportError): # if cython not installed, use mock module with no-op decorators and types from fontTools.misc import cython - - COMPILED = False +COMPILED = cython.compiled import math diff --git a/contrib/python/fonttools/fontTools/misc/bezierTools.py b/contrib/python/fonttools/fontTools/misc/bezierTools.py index 5411ff99fd..1b37ade8d6 100644 --- a/contrib/python/fonttools/fontTools/misc/bezierTools.py +++ b/contrib/python/fonttools/fontTools/misc/bezierTools.py @@ -9,13 +9,10 @@ from collections import namedtuple try: import cython - - COMPILED = cython.compiled except (AttributeError, ImportError): # if cython not installed, use mock module with no-op decorators and types from fontTools.misc import cython - - COMPILED = False +COMPILED = cython.compiled EPSILON = 1e-9 diff --git a/contrib/python/fonttools/fontTools/misc/symfont.py b/contrib/python/fonttools/fontTools/misc/symfont.py index 3a8819c774..4dea418408 100644 --- a/contrib/python/fonttools/fontTools/misc/symfont.py +++ b/contrib/python/fonttools/fontTools/misc/symfont.py @@ -121,13 +121,10 @@ def printGreenPen(penName, funcs, file=sys.stdout, docstring=None): """from fontTools.pens.basePen import BasePen, OpenContourError try: import cython - - COMPILED = cython.compiled except (AttributeError, ImportError): # if cython not installed, use mock module with no-op decorators and types from fontTools.misc import cython - - COMPILED = False +COMPILED = cython.compiled __all__ = ["%s"] diff --git a/contrib/python/fonttools/fontTools/misc/transform.py b/contrib/python/fonttools/fontTools/misc/transform.py index 9025b79ec1..2f4a216fa6 100644 --- a/contrib/python/fonttools/fontTools/misc/transform.py +++ b/contrib/python/fonttools/fontTools/misc/transform.py @@ -437,8 +437,20 @@ class DecomposedTransform: @classmethod def fromTransform(self, transform): + """Return a DecomposedTransform() equivalent of this transformation. + The returned solution always has skewY = 0, and angle in the (-180, 180]. + + :Example: + >>> DecomposedTransform.fromTransform(Transform(3, 0, 0, 2, 0, 0)) + DecomposedTransform(translateX=0, translateY=0, rotation=0.0, scaleX=3.0, scaleY=2.0, skewX=0.0, skewY=0.0, tCenterX=0, tCenterY=0) + >>> DecomposedTransform.fromTransform(Transform(0, 0, 0, 1, 0, 0)) + DecomposedTransform(translateX=0, translateY=0, rotation=0.0, scaleX=0.0, scaleY=1.0, skewX=0.0, skewY=0.0, tCenterX=0, tCenterY=0) + >>> DecomposedTransform.fromTransform(Transform(0, 0, 1, 1, 0, 0)) + DecomposedTransform(translateX=0, translateY=0, rotation=-45.0, scaleX=0.0, scaleY=1.4142135623730951, skewX=0.0, skewY=0.0, tCenterX=0, tCenterY=0) + """ # Adapted from an answer on # https://math.stackexchange.com/questions/13150/extracting-rotation-scale-values-from-2d-transformation-matrix + a, b, c, d, x, y = transform sx = math.copysign(1, a) @@ -450,21 +462,20 @@ class DecomposedTransform: rotation = 0 scaleX = scaleY = 0 - skewX = skewY = 0 + skewX = 0 # Apply the QR-like decomposition. if a != 0 or b != 0: r = math.sqrt(a * a + b * b) rotation = math.acos(a / r) if b >= 0 else -math.acos(a / r) scaleX, scaleY = (r, delta / r) - skewX, skewY = (math.atan((a * c + b * d) / (r * r)), 0) + skewX = math.atan((a * c + b * d) / (r * r)) elif c != 0 or d != 0: s = math.sqrt(c * c + d * d) rotation = math.pi / 2 - ( math.acos(-c / s) if d >= 0 else -math.acos(c / s) ) scaleX, scaleY = (delta / s, s) - skewX, skewY = (0, math.atan((a * c + b * d) / (s * s))) else: # a = b = c = d = 0 pass @@ -476,7 +487,7 @@ class DecomposedTransform: scaleX * sx, scaleY, math.degrees(skewX) * sx, - math.degrees(skewY), + 0.0, 0, 0, ) diff --git a/contrib/python/fonttools/fontTools/pens/momentsPen.py b/contrib/python/fonttools/fontTools/pens/momentsPen.py index 2afb8fdbd1..77ead9fc31 100644 --- a/contrib/python/fonttools/fontTools/pens/momentsPen.py +++ b/contrib/python/fonttools/fontTools/pens/momentsPen.py @@ -2,13 +2,10 @@ from fontTools.pens.basePen import BasePen, OpenContourError try: import cython - - COMPILED = cython.compiled except (AttributeError, ImportError): # if cython not installed, use mock module with no-op decorators and types from fontTools.misc import cython - - COMPILED = False +COMPILED = cython.compiled __all__ = ["MomentsPen"] diff --git a/contrib/python/fonttools/fontTools/qu2cu/qu2cu.py b/contrib/python/fonttools/fontTools/qu2cu/qu2cu.py index 97a665f63a..8fe3e18b08 100644 --- a/contrib/python/fonttools/fontTools/qu2cu/qu2cu.py +++ b/contrib/python/fonttools/fontTools/qu2cu/qu2cu.py @@ -18,13 +18,10 @@ try: import cython - - COMPILED = cython.compiled except (AttributeError, ImportError): # if cython not installed, use mock module with no-op decorators and types from fontTools.misc import cython - - COMPILED = False +COMPILED = cython.compiled from fontTools.misc.bezierTools import splitCubicAtTC from collections import namedtuple diff --git a/contrib/python/fonttools/fontTools/ttLib/ttGlyphSet.py b/contrib/python/fonttools/fontTools/ttLib/ttGlyphSet.py index 446c81e7db..e8dd007c5c 100644 --- a/contrib/python/fonttools/fontTools/ttLib/ttGlyphSet.py +++ b/contrib/python/fonttools/fontTools/ttLib/ttGlyphSet.py @@ -119,19 +119,35 @@ class _TTGlyphSetCFF(_TTGlyphSet): tableTag = "CFF2" if "CFF2" in font else "CFF " self.charStrings = list(font[tableTag].cff.values())[0].CharStrings super().__init__(font, location, self.charStrings) + self.setLocation(location) + + def __getitem__(self, glyphName): + return _TTGlyphCFF(self, glyphName) + + def setLocation(self, location): self.blender = None if location: + # TODO Optimize by using instancer.setLocation() + from fontTools.varLib.varStore import VarStoreInstancer varStore = getattr(self.charStrings, "varStore", None) if varStore is not None: instancer = VarStoreInstancer( - varStore.otVarStore, font["fvar"].axes, location + varStore.otVarStore, self.font["fvar"].axes, location ) self.blender = instancer.interpolateFromDeltas + else: + self.blender = None - def __getitem__(self, glyphName): - return _TTGlyphCFF(self, glyphName) + @contextmanager + def pushLocation(self, location, reset: bool): + self.setLocation(location) + with _TTGlyphSet.pushLocation(self, location, reset) as value: + try: + yield value + finally: + self.setLocation(self.location) class _TTGlyphSetVARC(_TTGlyphSet): @@ -335,7 +351,6 @@ class _TTGlyphVARC(_TTGlyph): ) for comp in glyph.components: - if comp.flags & VarComponentFlags.HAVE_CONDITION: condition = varc.ConditionList.ConditionTable[comp.conditionIndex] if not _evaluateCondition( diff --git a/contrib/python/fonttools/fontTools/varLib/iup.py b/contrib/python/fonttools/fontTools/varLib/iup.py index 76555f3508..9ff6c0eca3 100644 --- a/contrib/python/fonttools/fontTools/varLib/iup.py +++ b/contrib/python/fonttools/fontTools/varLib/iup.py @@ -1,12 +1,9 @@ try: import cython - - COMPILED = cython.compiled except (AttributeError, ImportError): # if cython not installed, use mock module with no-op decorators and types from fontTools.misc import cython - - COMPILED = False +COMPILED = cython.compiled from typing import ( Sequence, @@ -77,7 +74,14 @@ def iup_segment( d = d2 else: # Interpolate - d = d1 + (x - x1) * scale + # + # NOTE: we assign an explicit intermediate variable here in + # order to disable a fused mul-add optimization. See: + # + # - https://godbolt.org/z/YsP4T3TqK, + # - https://github.com/fonttools/fonttools/issues/3703 + nudge = (x - x1) * scale + d = d1 + nudge out.append(d) diff --git a/contrib/python/fonttools/ya.make b/contrib/python/fonttools/ya.make index 874cdd1b3b..ce8febfcdd 100644 --- a/contrib/python/fonttools/ya.make +++ b/contrib/python/fonttools/ya.make @@ -2,7 +2,7 @@ PY3_LIBRARY() -VERSION(4.55.0) +VERSION(4.55.1) LICENSE(MIT) diff --git a/contrib/python/numpy/py3/tests/array_api/ya.make b/contrib/python/numpy/py3/tests/array_api/ya.make new file mode 100644 index 0000000000..8e54a6a20d --- /dev/null +++ b/contrib/python/numpy/py3/tests/array_api/ya.make @@ -0,0 +1,24 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/array_api/tests/__init__.py + numpy/array_api/tests/test_array_object.py + numpy/array_api/tests/test_creation_functions.py + numpy/array_api/tests/test_data_type_functions.py + numpy/array_api/tests/test_elementwise_functions.py + numpy/array_api/tests/test_indexing_functions.py + numpy/array_api/tests/test_manipulation_functions.py + numpy/array_api/tests/test_set_functions.py + numpy/array_api/tests/test_sorting_functions.py + numpy/array_api/tests/test_validation.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/compat/ya.make b/contrib/python/numpy/py3/tests/compat/ya.make new file mode 100644 index 0000000000..433e4e5b4b --- /dev/null +++ b/contrib/python/numpy/py3/tests/compat/ya.make @@ -0,0 +1,16 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/compat/tests/__init__.py + numpy/compat/tests/test_compat.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/core/ya.make b/contrib/python/numpy/py3/tests/core/ya.make new file mode 100644 index 0000000000..b3163f51e9 --- /dev/null +++ b/contrib/python/numpy/py3/tests/core/ya.make @@ -0,0 +1,88 @@ +PY3TEST() + +REQUIREMENTS(ram:25) + +SIZE(MEDIUM) + +FORK_SUBTESTS() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +DATA( + arcadia/contrib/python/numpy/py3/numpy +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/core/tests/__init__.py + numpy/core/tests/_locales.py + numpy/core/tests/test__exceptions.py + numpy/core/tests/test_abc.py + numpy/core/tests/test_api.py + numpy/core/tests/test_argparse.py + numpy/core/tests/test_array_coercion.py + #numpy/core/tests/test_array_interface.py + numpy/core/tests/test_arraymethod.py + numpy/core/tests/test_arrayprint.py + numpy/core/tests/test_casting_floatingpoint_errors.py + numpy/core/tests/test_casting_unittests.py + numpy/core/tests/test_conversion_utils.py + numpy/core/tests/test_cpu_dispatcher.py + numpy/core/tests/test_cpu_features.py + numpy/core/tests/test_custom_dtypes.py + numpy/core/tests/test_cython.py + numpy/core/tests/test_datetime.py + numpy/core/tests/test_defchararray.py + numpy/core/tests/test_deprecations.py + numpy/core/tests/test_dlpack.py + numpy/core/tests/test_dtype.py + numpy/core/tests/test_einsum.py + numpy/core/tests/test_errstate.py + numpy/core/tests/test_extint128.py + numpy/core/tests/test_function_base.py + numpy/core/tests/test_getlimits.py + numpy/core/tests/test_half.py + numpy/core/tests/test_hashtable.py + numpy/core/tests/test_indexerrors.py + numpy/core/tests/test_indexing.py + numpy/core/tests/test_item_selection.py + numpy/core/tests/test_limited_api.py + numpy/core/tests/test_longdouble.py + numpy/core/tests/test_machar.py + numpy/core/tests/test_mem_overlap.py + #numpy/core/tests/test_mem_policy.py + numpy/core/tests/test_memmap.py + numpy/core/tests/test_multiarray.py + numpy/core/tests/test_nditer.py + numpy/core/tests/test_nep50_promotions.py + numpy/core/tests/test_numeric.py + numpy/core/tests/test_numerictypes.py + numpy/core/tests/test_numpy_2_0_compat.py + numpy/core/tests/test_overrides.py + numpy/core/tests/test_print.py + numpy/core/tests/test_protocols.py + numpy/core/tests/test_records.py + numpy/core/tests/test_regression.py + numpy/core/tests/test_scalar_ctors.py + numpy/core/tests/test_scalar_methods.py + numpy/core/tests/test_scalarbuffer.py + numpy/core/tests/test_scalarinherit.py + numpy/core/tests/test_scalarmath.py + numpy/core/tests/test_scalarprint.py + numpy/core/tests/test_shape_base.py + numpy/core/tests/test_simd.py + numpy/core/tests/test_simd_module.py + numpy/core/tests/test_strings.py + numpy/core/tests/test_ufunc.py + numpy/core/tests/test_umath.py + numpy/core/tests/test_umath_accuracy.py + numpy/core/tests/test_umath_complex.py + numpy/core/tests/test_unicode.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/fft/ya.make b/contrib/python/numpy/py3/tests/fft/ya.make new file mode 100644 index 0000000000..375462e5ae --- /dev/null +++ b/contrib/python/numpy/py3/tests/fft/ya.make @@ -0,0 +1,17 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/fft/tests/__init__.py + numpy/fft/tests/test_helper.py + numpy/fft/tests/test_pocketfft.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/lib/ya.make b/contrib/python/numpy/py3/tests/lib/ya.make new file mode 100644 index 0000000000..bac5e34f1a --- /dev/null +++ b/contrib/python/numpy/py3/tests/lib/ya.make @@ -0,0 +1,48 @@ +PY3TEST() + +SIZE(MEDIUM) + +FORK_SUBTESTS() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +DATA( + arcadia/contrib/python/numpy/py3/numpy +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/lib/tests/__init__.py + numpy/lib/tests/test__datasource.py + numpy/lib/tests/test__iotools.py + numpy/lib/tests/test__version.py + numpy/lib/tests/test_arraypad.py + numpy/lib/tests/test_arraysetops.py + numpy/lib/tests/test_arrayterator.py + numpy/lib/tests/test_financial_expired.py + numpy/lib/tests/test_format.py + numpy/lib/tests/test_function_base.py + numpy/lib/tests/test_histograms.py + numpy/lib/tests/test_index_tricks.py + numpy/lib/tests/test_io.py + numpy/lib/tests/test_loadtxt.py + numpy/lib/tests/test_mixins.py + numpy/lib/tests/test_nanfunctions.py + numpy/lib/tests/test_packbits.py + numpy/lib/tests/test_polynomial.py + numpy/lib/tests/test_recfunctions.py + numpy/lib/tests/test_regression.py + numpy/lib/tests/test_shape_base.py + numpy/lib/tests/test_stride_tricks.py + numpy/lib/tests/test_twodim_base.py + numpy/lib/tests/test_type_check.py + numpy/lib/tests/test_ufunclike.py + numpy/lib/tests/test_utils.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/linalg/ya.make b/contrib/python/numpy/py3/tests/linalg/ya.make new file mode 100644 index 0000000000..7a592b326c --- /dev/null +++ b/contrib/python/numpy/py3/tests/linalg/ya.make @@ -0,0 +1,28 @@ +PY3TEST() + +FORK_SUBTESTS() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/linalg/tests/__init__.py + numpy/linalg/tests/test_deprecations.py + numpy/linalg/tests/test_linalg.py + numpy/linalg/tests/test_regression.py + numpy/matrixlib/tests/__init__.py + numpy/matrixlib/tests/test_defmatrix.py + numpy/matrixlib/tests/test_interaction.py + numpy/matrixlib/tests/test_masked_matrix.py + numpy/matrixlib/tests/test_matrix_linalg.py + numpy/matrixlib/tests/test_multiarray.py + numpy/matrixlib/tests/test_numeric.py + numpy/matrixlib/tests/test_regression.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/ma/ya.make b/contrib/python/numpy/py3/tests/ma/ya.make new file mode 100644 index 0000000000..17ec71d8fa --- /dev/null +++ b/contrib/python/numpy/py3/tests/ma/ya.make @@ -0,0 +1,26 @@ +PY3TEST() + +SIZE(MEDIUM) + +FORK_SUBTESTS() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/ma/tests/__init__.py + numpy/ma/tests/test_core.py + numpy/ma/tests/test_deprecations.py + numpy/ma/tests/test_extras.py + numpy/ma/tests/test_mrecords.py + numpy/ma/tests/test_old_ma.py + numpy/ma/tests/test_regression.py + numpy/ma/tests/test_subclassing.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/polynomial/ya.make b/contrib/python/numpy/py3/tests/polynomial/ya.make new file mode 100644 index 0000000000..82fedce504 --- /dev/null +++ b/contrib/python/numpy/py3/tests/polynomial/ya.make @@ -0,0 +1,25 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/polynomial/tests/__init__.py + numpy/polynomial/tests/test_chebyshev.py + numpy/polynomial/tests/test_classes.py + numpy/polynomial/tests/test_hermite.py + numpy/polynomial/tests/test_hermite_e.py + numpy/polynomial/tests/test_laguerre.py + numpy/polynomial/tests/test_legendre.py + numpy/polynomial/tests/test_polynomial.py + numpy/polynomial/tests/test_polyutils.py + numpy/polynomial/tests/test_printing.py + numpy/polynomial/tests/test_symbol.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/random/ya.make b/contrib/python/numpy/py3/tests/random/ya.make new file mode 100644 index 0000000000..526a2f38e3 --- /dev/null +++ b/contrib/python/numpy/py3/tests/random/ya.make @@ -0,0 +1,30 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +DATA( + arcadia/contrib/python/numpy/py3/numpy +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/random/tests/__init__.py + numpy/random/tests/data/__init__.py + numpy/random/tests/test_direct.py + numpy/random/tests/test_extending.py + numpy/random/tests/test_generator_mt19937.py + numpy/random/tests/test_generator_mt19937_regressions.py + numpy/random/tests/test_random.py + numpy/random/tests/test_randomstate.py + numpy/random/tests/test_randomstate_regression.py + numpy/random/tests/test_regression.py + numpy/random/tests/test_seed_sequence.py + numpy/random/tests/test_smoke.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/testing/ya.make b/contrib/python/numpy/py3/tests/testing/ya.make new file mode 100644 index 0000000000..0a18cf3072 --- /dev/null +++ b/contrib/python/numpy/py3/tests/testing/ya.make @@ -0,0 +1,16 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/testing/tests/__init__.py + numpy/testing/tests/test_utils.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/tests/ya.make b/contrib/python/numpy/py3/tests/tests/ya.make new file mode 100644 index 0000000000..d3a5791957 --- /dev/null +++ b/contrib/python/numpy/py3/tests/tests/ya.make @@ -0,0 +1,25 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/tests/__init__.py + numpy/tests/test__all__.py + #numpy/tests/test_ctypeslib.py + numpy/tests/test_lazyloading.py + numpy/tests/test_matlib.py + numpy/tests/test_numpy_config.py + numpy/tests/test_numpy_version.py + numpy/tests/test_public_api.py + numpy/tests/test_reloading.py + #numpy/tests/test_scripts.py + numpy/tests/test_warnings.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/typing/ya.make b/contrib/python/numpy/py3/tests/typing/ya.make new file mode 100644 index 0000000000..7544cb20dd --- /dev/null +++ b/contrib/python/numpy/py3/tests/typing/ya.make @@ -0,0 +1,18 @@ +PY3TEST() + +PEERDIR( + contrib/python/numpy/py3/tests +) + +NO_LINT() + +SRCDIR(contrib/python/numpy/py3) + +TEST_SRCS( + numpy/typing/tests/__init__.py + #numpy/typing/tests/test_isfile.py + #numpy/typing/tests/test_runtime.py + numpy/typing/tests/test_typing.py +) + +END() diff --git a/contrib/python/numpy/py3/tests/ya.make b/contrib/python/numpy/py3/tests/ya.make index 5df3fb0428..22be4f700d 100644 --- a/contrib/python/numpy/py3/tests/ya.make +++ b/contrib/python/numpy/py3/tests/ya.make @@ -1,13 +1,8 @@ -PY3TEST() +PY3_LIBRARY() -REQUIREMENTS( - cpu:4 - ram:25 -) - -SIZE(MEDIUM) +VERSION(1.26.4) -FORK_SUBTESTS() +LICENSE(BSD-3-Clause) PEERDIR( contrib/python/numpy @@ -16,235 +11,31 @@ PEERDIR( contrib/python/pytz ) -DATA( - arcadia/contrib/python/numpy/py3/numpy -) - NO_LINT() -SRCDIR( - contrib/python/numpy/py3 -) +SRCDIR(contrib/python/numpy/py3) PY_SRCS( TOP_LEVEL numpy/conftest.py ) -TEST_SRCS( - numpy/array_api/tests/__init__.py - numpy/array_api/tests/test_array_object.py - numpy/array_api/tests/test_creation_functions.py - numpy/array_api/tests/test_data_type_functions.py - numpy/array_api/tests/test_elementwise_functions.py - numpy/array_api/tests/test_indexing_functions.py - numpy/array_api/tests/test_manipulation_functions.py - numpy/array_api/tests/test_set_functions.py - numpy/array_api/tests/test_sorting_functions.py - numpy/array_api/tests/test_validation.py - numpy/compat/tests/__init__.py - numpy/compat/tests/test_compat.py - numpy/core/tests/__init__.py - numpy/core/tests/_locales.py - numpy/core/tests/test__exceptions.py - numpy/core/tests/test_abc.py - numpy/core/tests/test_api.py - numpy/core/tests/test_argparse.py - numpy/core/tests/test_array_coercion.py - #numpy/core/tests/test_array_interface.py - numpy/core/tests/test_arraymethod.py - numpy/core/tests/test_arrayprint.py - numpy/core/tests/test_casting_floatingpoint_errors.py - numpy/core/tests/test_casting_unittests.py - numpy/core/tests/test_conversion_utils.py - numpy/core/tests/test_cpu_dispatcher.py - numpy/core/tests/test_cpu_features.py - numpy/core/tests/test_custom_dtypes.py - numpy/core/tests/test_cython.py - numpy/core/tests/test_datetime.py - numpy/core/tests/test_defchararray.py - numpy/core/tests/test_deprecations.py - numpy/core/tests/test_dlpack.py - numpy/core/tests/test_dtype.py - numpy/core/tests/test_einsum.py - numpy/core/tests/test_errstate.py - numpy/core/tests/test_extint128.py - numpy/core/tests/test_function_base.py - numpy/core/tests/test_getlimits.py - numpy/core/tests/test_half.py - numpy/core/tests/test_hashtable.py - numpy/core/tests/test_indexerrors.py - numpy/core/tests/test_indexing.py - numpy/core/tests/test_item_selection.py - numpy/core/tests/test_limited_api.py - numpy/core/tests/test_longdouble.py - numpy/core/tests/test_machar.py - numpy/core/tests/test_mem_overlap.py - #numpy/core/tests/test_mem_policy.py - numpy/core/tests/test_memmap.py - numpy/core/tests/test_multiarray.py - numpy/core/tests/test_nditer.py - numpy/core/tests/test_nep50_promotions.py - numpy/core/tests/test_numeric.py - numpy/core/tests/test_numerictypes.py - numpy/core/tests/test_numpy_2_0_compat.py - numpy/core/tests/test_overrides.py - numpy/core/tests/test_print.py - numpy/core/tests/test_protocols.py - numpy/core/tests/test_records.py - numpy/core/tests/test_regression.py - numpy/core/tests/test_scalar_ctors.py - numpy/core/tests/test_scalar_methods.py - numpy/core/tests/test_scalarbuffer.py - numpy/core/tests/test_scalarinherit.py - numpy/core/tests/test_scalarmath.py - numpy/core/tests/test_scalarprint.py - numpy/core/tests/test_shape_base.py - numpy/core/tests/test_simd.py - numpy/core/tests/test_simd_module.py - numpy/core/tests/test_strings.py - numpy/core/tests/test_ufunc.py - numpy/core/tests/test_umath.py - numpy/core/tests/test_umath_accuracy.py - numpy/core/tests/test_umath_complex.py - numpy/core/tests/test_unicode.py - #numpy/distutils/tests/__init__.py - #numpy/distutils/tests/test_build_ext.py - #numpy/distutils/tests/test_ccompiler_opt.py - #numpy/distutils/tests/test_ccompiler_opt_conf.py - #numpy/distutils/tests/test_exec_command.py - #numpy/distutils/tests/test_fcompiler.py - #numpy/distutils/tests/test_fcompiler_gnu.py - #numpy/distutils/tests/test_fcompiler_intel.py - #numpy/distutils/tests/test_fcompiler_nagfor.py - #numpy/distutils/tests/test_from_template.py - #numpy/distutils/tests/test_log.py - #numpy/distutils/tests/test_mingw32ccompiler.py - #numpy/distutils/tests/test_misc_util.py - #numpy/distutils/tests/test_npy_pkg_config.py - #numpy/distutils/tests/test_shell_utils.py - #numpy/distutils/tests/test_system_info.py - #numpy/f2py/tests/__init__.py - #numpy/f2py/tests/test_abstract_interface.py - #numpy/f2py/tests/test_array_from_pyobj.py - #numpy/f2py/tests/test_assumed_shape.py - #numpy/f2py/tests/test_block_docstring.py - #numpy/f2py/tests/test_callback.py - #numpy/f2py/tests/test_character.py - #numpy/f2py/tests/test_common.py - #numpy/f2py/tests/test_compile_function.py - #numpy/f2py/tests/test_crackfortran.py - #numpy/f2py/tests/test_data.py - #numpy/f2py/tests/test_docs.py - #numpy/f2py/tests/test_f2cmap.py - #numpy/f2py/tests/test_f2py2e.py - #numpy/f2py/tests/test_isoc.py - #numpy/f2py/tests/test_kind.py - #numpy/f2py/tests/test_mixed.py - #numpy/f2py/tests/test_module_doc.py - #numpy/f2py/tests/test_parameter.py - #numpy/f2py/tests/test_quoted_character.py - #numpy/f2py/tests/test_regression.py - #numpy/f2py/tests/test_return_character.py - #numpy/f2py/tests/test_return_complex.py - #numpy/f2py/tests/test_return_integer.py - #numpy/f2py/tests/test_return_logical.py - #numpy/f2py/tests/test_return_real.py - #numpy/f2py/tests/test_semicolon_split.py - #numpy/f2py/tests/test_size.py - #numpy/f2py/tests/test_string.py - #numpy/f2py/tests/test_symbolic.py - #numpy/f2py/tests/test_value_attrspec.py - #numpy/f2py/tests/util.py - numpy/fft/tests/__init__.py - numpy/fft/tests/test_helper.py - numpy/fft/tests/test_pocketfft.py - numpy/lib/tests/__init__.py - numpy/lib/tests/test__datasource.py - numpy/lib/tests/test__iotools.py - numpy/lib/tests/test__version.py - numpy/lib/tests/test_arraypad.py - numpy/lib/tests/test_arraysetops.py - numpy/lib/tests/test_arrayterator.py - numpy/lib/tests/test_financial_expired.py - numpy/lib/tests/test_format.py - numpy/lib/tests/test_function_base.py - numpy/lib/tests/test_histograms.py - numpy/lib/tests/test_index_tricks.py - numpy/lib/tests/test_io.py - numpy/lib/tests/test_loadtxt.py - numpy/lib/tests/test_mixins.py - numpy/lib/tests/test_nanfunctions.py - numpy/lib/tests/test_packbits.py - numpy/lib/tests/test_polynomial.py - numpy/lib/tests/test_recfunctions.py - numpy/lib/tests/test_regression.py - numpy/lib/tests/test_shape_base.py - numpy/lib/tests/test_stride_tricks.py - numpy/lib/tests/test_twodim_base.py - numpy/lib/tests/test_type_check.py - numpy/lib/tests/test_ufunclike.py - numpy/lib/tests/test_utils.py - numpy/linalg/tests/__init__.py - numpy/linalg/tests/test_deprecations.py - numpy/linalg/tests/test_linalg.py - numpy/linalg/tests/test_regression.py - numpy/ma/tests/__init__.py - numpy/ma/tests/test_core.py - numpy/ma/tests/test_deprecations.py - numpy/ma/tests/test_extras.py - numpy/ma/tests/test_mrecords.py - numpy/ma/tests/test_old_ma.py - numpy/ma/tests/test_regression.py - numpy/ma/tests/test_subclassing.py - numpy/matrixlib/tests/__init__.py - numpy/matrixlib/tests/test_defmatrix.py - numpy/matrixlib/tests/test_interaction.py - numpy/matrixlib/tests/test_masked_matrix.py - numpy/matrixlib/tests/test_matrix_linalg.py - numpy/matrixlib/tests/test_multiarray.py - numpy/matrixlib/tests/test_numeric.py - numpy/matrixlib/tests/test_regression.py - numpy/polynomial/tests/__init__.py - numpy/polynomial/tests/test_chebyshev.py - numpy/polynomial/tests/test_classes.py - numpy/polynomial/tests/test_hermite.py - numpy/polynomial/tests/test_hermite_e.py - numpy/polynomial/tests/test_laguerre.py - numpy/polynomial/tests/test_legendre.py - numpy/polynomial/tests/test_polynomial.py - numpy/polynomial/tests/test_polyutils.py - numpy/polynomial/tests/test_printing.py - numpy/polynomial/tests/test_symbol.py - numpy/random/tests/__init__.py - numpy/random/tests/data/__init__.py - numpy/random/tests/test_direct.py - numpy/random/tests/test_extending.py - numpy/random/tests/test_generator_mt19937.py - numpy/random/tests/test_generator_mt19937_regressions.py - numpy/random/tests/test_random.py - numpy/random/tests/test_randomstate.py - numpy/random/tests/test_randomstate_regression.py - numpy/random/tests/test_regression.py - numpy/random/tests/test_seed_sequence.py - numpy/random/tests/test_smoke.py - numpy/testing/tests/__init__.py - numpy/testing/tests/test_utils.py - numpy/tests/__init__.py - numpy/tests/test__all__.py - #numpy/tests/test_ctypeslib.py - numpy/tests/test_lazyloading.py - numpy/tests/test_matlib.py - numpy/tests/test_numpy_config.py - numpy/tests/test_numpy_version.py - numpy/tests/test_public_api.py - numpy/tests/test_reloading.py - #numpy/tests/test_scripts.py - numpy/tests/test_warnings.py - numpy/typing/tests/__init__.py - #numpy/typing/tests/test_isfile.py - #numpy/typing/tests/test_runtime.py - numpy/typing/tests/test_typing.py -) - END() + +RECURSE_FOR_TESTS( + array_api + compat + core + # distutils + # f2py + fft + lib + linalg + ma + # matrixlib - merged with linalg + polynomial + random + testing + tests + typing +) |