Browse Source

Intermediate changes
commit_hash:1a5e9f4585838729a12fdcba5306caddb2c0c7ac

robot-piglet 2 months ago
parent
commit
691a35e054

+ 1 - 1
contrib/libs/cxxsupp/builtins/.yandex_meta/build.ym

@@ -1,6 +1,6 @@
 {% extends '//builtin/bag.ym' %}
 
-{% block current_version %}19.1.4{% endblock %}
+{% block current_version %}19.1.5{% endblock %}
 
 {% block current_url %}
 https://github.com/llvm/llvm-project/releases/download/llvmorg-{{self.version().strip()}}/compiler-rt-{{self.version().strip()}}.src.tar.xz

+ 2 - 2
contrib/libs/cxxsupp/builtins/ya.make

@@ -12,9 +12,9 @@ LICENSE(
 
 LICENSE_TEXTS(.yandex_meta/licenses.list.txt)
 
-VERSION(19.1.4)
+VERSION(19.1.5)
 
-ORIGINAL_SOURCE(https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.4/compiler-rt-19.1.4.src.tar.xz)
+ORIGINAL_SOURCE(https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.5/compiler-rt-19.1.5.src.tar.xz)
 
 NO_COMPILER_WARNINGS()
 

+ 47 - 38
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)
 ----------------------------
 

+ 1 - 1
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"]

+ 6 - 1
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

+ 1 - 4
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
 

+ 1 - 4
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

+ 1 - 4
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"]

+ 15 - 4
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,
         )

+ 1 - 4
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"]

Some files were not shown because too many files changed in this diff