robot-piglet 6 месяцев назад
Родитель
Сommit
29e274a4ea

+ 2 - 1
build/conf/settings.conf

@@ -15,7 +15,7 @@ ENABLE_RERESOLVE_FOR_GENERATED_FILES=yes
 REPORT_ALL_DUPSRC=yes
 DEPS_CACHE_CONTROL_UIDS_CACHE=yes
 INCLUDE_BLACKLIST_TO_CONF_HASH=no
-INCLUDE_ISOLATED_PROJECTS_TO_CONF_HASH=no
+INCLUDE_ISOLATED_PROJECTS_TO_CONF_HASH=yes
 USE_GRAND_BYPASS=no
 USE_GLOBAL_CMD=yes
 YMAKE_USE_NEW_UIDS=yes
@@ -129,3 +129,4 @@ _FOLDABLE_VARS=\
 
 ARCADIA_TEST_ROOT=../arcadia_tests_data/
 DEFAULT_REQUIREMENTS=network:restricted cpu:1 ram:32
+

+ 9 - 0
build/plugins/nots.py

@@ -234,6 +234,15 @@ def on_set_package_manager(unit):
             pm_type = pm_key
             break
 
+    if pm_type == 'npm' and "devtools/dummy_arcadia/typescript/npm" not in source_path:
+        ymake.report_configure_error(
+            "\n"
+            "Project is configured to use npm as a package manager. \n"
+            "Only pnpm is supported at the moment.\n"
+            "Please follow the instruction to migrate your project:\n"
+            "https://docs.yandex-team.ru/frontend-in-arcadia/tutorials/migrate#migrate-to-pnpm"
+        )
+
     unit.on_peerdir_ts_resource(pm_type)
     unit.set(["PM_TYPE", pm_type])
     unit.set(["PM_SCRIPT", f"${pm_type.upper()}_SCRIPT"])

+ 1 - 1
build/ymake.core.conf

@@ -20,7 +20,7 @@ FBS_FAKEID=2024-03-13
 
 # Change of this value will invalidate some parts of configure cache
 # but will not affect builds anyhow (except tests referring build/ directory)
-JSON_CACHE_FAKE_ID=20240414
+JSON_CACHE_FAKE_ID=20240830
 
 STRUCT_CMD=yes
 

+ 9 - 7
contrib/python/PyYAML/py2/ya.make

@@ -1,9 +1,11 @@
-PY2_LIBRARY()
+# Generated by devtools/yamaker (pypi).
 
-LICENSE(MIT)
+PY2_LIBRARY()
 
 VERSION(5.4.1)
 
+LICENSE(MIT)
+
 PEERDIR(
     contrib/libs/yaml
 )
@@ -13,6 +15,10 @@ ADDINCL(
     FOR cython contrib/python/PyYAML/py2
 )
 
+NO_COMPILER_WARNINGS()
+
+NO_LINT()
+
 PY_SRCS(
     TOP_LEVEL
     _yaml/__init__.py
@@ -38,13 +44,9 @@ PY_SRCS(
 )
 
 RESOURCE_FILES(
-    PREFIX contrib/python/PyYAML/
+    PREFIX contrib/python/PyYAML/py2/
     .dist-info/METADATA
     .dist-info/top_level.txt
 )
 
-NO_LINT()
-
-NO_COMPILER_WARNINGS()
-
 END()

+ 8 - 8
contrib/python/PyYAML/py3/.dist-info/METADATA

@@ -1,12 +1,12 @@
 Metadata-Version: 2.1
 Name: PyYAML
-Version: 5.4.1
+Version: 6.0.2
 Summary: YAML parser and emitter for Python
 Home-page: https://pyyaml.org/
+Download-URL: https://pypi.org/project/PyYAML/
 Author: Kirill Simonov
 Author-email: xi@resolvent.net
 License: MIT
-Download-URL: https://pypi.org/project/PyYAML/
 Project-URL: Bug Tracker, https://github.com/yaml/pyyaml/issues
 Project-URL: CI, https://github.com/yaml/pyyaml/actions
 Project-URL: Documentation, https://pyyaml.org/wiki/PyYAMLDocumentation
@@ -19,18 +19,19 @@ Classifier: License :: OSI Approved :: MIT License
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Cython
 Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.6
-Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: 3.8
 Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3.13
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
 Classifier: Topic :: Text Processing :: Markup
-Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*
+Requires-Python: >=3.8
+License-File: LICENSE
 
 YAML is a data serialization format designed for human readability
 and interaction with scripting languages.  PyYAML is a YAML parser
@@ -43,4 +44,3 @@ allow to represent an arbitrary Python object.
 
 PyYAML is applicable for a broad range of tasks from complex
 configuration files to object serialization and persistence.
-

+ 0 - 43
contrib/python/PyYAML/py3/README

@@ -1,43 +0,0 @@
-PyYAML - The next generation YAML parser and emitter for Python.
-
-To install, type 'python setup.py install'.
-
-By default, the setup.py script checks whether LibYAML is installed
-and if so, builds and installs LibYAML bindings.  To skip the check
-and force installation of LibYAML bindings, use the option '--with-libyaml':
-'python setup.py --with-libyaml install'.  To disable the check and
-skip building and installing LibYAML bindings, use '--without-libyaml':
-'python setup.py --without-libyaml install'.
-
-When LibYAML bindings are installed, you may use fast LibYAML-based
-parser and emitter as follows:
-
-    >>> yaml.load(stream, Loader=yaml.CLoader)
-    >>> yaml.dump(data, Dumper=yaml.CDumper)
-
-If you don't trust the input stream, you should use:
-
-    >>> yaml.safe_load(stream)
-
-PyYAML includes a comprehensive test suite.  To run the tests,
-type 'python setup.py test'.
-
-For more information, check the PyYAML homepage:
-'https://github.com/yaml/pyyaml'.
-
-For PyYAML tutorial and reference, see:
-'http://pyyaml.org/wiki/PyYAMLDocumentation'.
-
-Discuss PyYAML with the maintainers in IRC #pyyaml irc.freenode.net.
-
-You may also use the YAML-Core mailing list:
-'http://lists.sourceforge.net/lists/listinfo/yaml-core'.
-
-Submit bug reports and feature requests to the PyYAML bug tracker:
-'https://github.com/yaml/pyyaml/issues'.
-
-The PyYAML module was written by Kirill Simonov <xi@resolvent.net>.
-It is currently maintained by the YAML and Python communities.
-
-PyYAML is released under the MIT license.
-See the file LICENSE for more details.

+ 53 - 0
contrib/python/PyYAML/py3/README.md

@@ -0,0 +1,53 @@
+PyYAML
+======
+
+A full-featured YAML processing framework for Python
+
+## Installation
+
+To install, type `python setup.py install`.
+
+By default, the `setup.py` script checks whether LibYAML is installed and if
+so, builds and installs LibYAML bindings.
+To skip the check and force installation of LibYAML bindings, use the option
+`--with-libyaml`: `python setup.py --with-libyaml install`.
+To disable the check and skip building and installing LibYAML bindings, use
+`--without-libyaml`: `python setup.py --without-libyaml install`.
+
+When LibYAML bindings are installed, you may use fast LibYAML-based parser and
+emitter as follows:
+
+    >>> yaml.load(stream, Loader=yaml.CLoader)
+    >>> yaml.dump(data, Dumper=yaml.CDumper)
+
+If you don't trust the input YAML stream, you should use:
+
+    >>> yaml.safe_load(stream)
+
+## Testing
+
+PyYAML includes a comprehensive test suite.
+To run the tests, type `python setup.py test`.
+
+## Further Information
+
+* For more information, check the
+  [PyYAML homepage](https://github.com/yaml/pyyaml).
+
+* [PyYAML tutorial and reference](http://pyyaml.org/wiki/PyYAMLDocumentation).
+
+* Discuss PyYAML with the maintainers on
+  Matrix at https://matrix.to/#/#pyyaml:yaml.io or
+  IRC #pyyaml irc.libera.chat
+
+* Submit bug reports and feature requests to the
+  [PyYAML bug tracker](https://github.com/yaml/pyyaml/issues).
+
+## License
+
+The PyYAML module was written by Kirill Simonov <xi@resolvent.net>.
+It is currently maintained by the YAML and Python communities.
+
+PyYAML is released under the MIT license.
+
+See the file LICENSE for more details.

+ 9 - 7
contrib/python/PyYAML/py3/ya.make

@@ -1,8 +1,10 @@
+# Generated by devtools/yamaker (pypi).
+
 PY3_LIBRARY()
 
-LICENSE(MIT)
+VERSION(6.0.2)
 
-VERSION(5.4.1)
+LICENSE(MIT)
 
 PEERDIR(
     contrib/libs/yaml
@@ -13,6 +15,10 @@ ADDINCL(
     FOR cython contrib/python/PyYAML/py3
 )
 
+NO_COMPILER_WARNINGS()
+
+NO_LINT()
+
 PY_SRCS(
     TOP_LEVEL
     _yaml/__init__.py
@@ -38,13 +44,9 @@ PY_SRCS(
 )
 
 RESOURCE_FILES(
-    PREFIX contrib/python/PyYAML/
+    PREFIX contrib/python/PyYAML/py3/
     .dist-info/METADATA
     .dist-info/top_level.txt
 )
 
-NO_LINT()
-
-NO_COMPILER_WARNINGS()
-
 END()

+ 6 - 43
contrib/python/PyYAML/py3/yaml/__init__.py

@@ -8,7 +8,7 @@ from .nodes import *
 from .loader import *
 from .dumper import *
 
-__version__ = '5.4.1'
+__version__ = '6.0.2'
 try:
     from .cyaml import *
     __with_libyaml__ = True
@@ -18,41 +18,12 @@ except ImportError:
 import io
 
 #------------------------------------------------------------------------------
-# Warnings control
+# XXX "Warnings control" is now deprecated. Leaving in the API function to not
+# break code that uses it.
 #------------------------------------------------------------------------------
-
-# 'Global' warnings state:
-_warnings_enabled = {
-    'YAMLLoadWarning': True,
-}
-
-# Get or set global warnings' state
 def warnings(settings=None):
     if settings is None:
-        return _warnings_enabled
-
-    if type(settings) is dict:
-        for key in settings:
-            if key in _warnings_enabled:
-                _warnings_enabled[key] = settings[key]
-
-# Warn when load() is called without Loader=...
-class YAMLLoadWarning(RuntimeWarning):
-    pass
-
-def load_warning(method):
-    if _warnings_enabled['YAMLLoadWarning'] is False:
-        return
-
-    import warnings
-
-    message = (
-        "calling yaml.%s() without Loader=... is deprecated, as the "
-        "default Loader is unsafe. Please read "
-        "https://msg.pyyaml.org/load for full details."
-    ) % method
-
-    warnings.warn(message, YAMLLoadWarning, stacklevel=3)
+        return {}
 
 #------------------------------------------------------------------------------
 def scan(stream, Loader=Loader):
@@ -100,30 +71,22 @@ def compose_all(stream, Loader=Loader):
     finally:
         loader.dispose()
 
-def load(stream, Loader=None):
+def load(stream, Loader):
     """
     Parse the first YAML document in a stream
     and produce the corresponding Python object.
     """
-    if Loader is None:
-        load_warning('load')
-        Loader = FullLoader
-
     loader = Loader(stream)
     try:
         return loader.get_single_data()
     finally:
         loader.dispose()
 
-def load_all(stream, Loader=None):
+def load_all(stream, Loader):
     """
     Parse all YAML documents in a stream
     and produce corresponding Python objects.
     """
-    if Loader is None:
-        load_warning('load_all')
-        Loader = FullLoader
-
     loader = Loader(stream)
     try:
         while loader.check_data():

+ 2 - 12
contrib/python/PyYAML/py3/yaml/_yaml.h

@@ -1,18 +1,8 @@
 
 #include <yaml.h>
 
-#if PY_MAJOR_VERSION < 3
-
-#define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
-
-#else
-
-#define PyString_CheckExact PyBytes_CheckExact
-#define PyString_AS_STRING  PyBytes_AS_STRING
-#define PyString_GET_SIZE   PyBytes_GET_SIZE
-#define PyString_FromStringAndSize  PyBytes_FromStringAndSize
-
-#endif
+#define PyUnicode_FromYamlString(s) PyUnicode_FromString((const char *)(void *)(s))
+#define PyBytes_AS_Yaml_STRING(s) ((yaml_char_t *)PyBytes_AS_STRING(s))
 
 #ifdef _MSC_VER	/* MS Visual C++ 6.0 */
 #if _MSC_VER == 1200

Некоторые файлы не были показаны из-за большого количества измененных файлов