17
0
Files
python-FontTools/python-FontTools.spec

150 lines
4.6 KiB
RPMSpec
Raw Normal View History

#
Accepting request 1142082 from home:dirkmueller:Factory - update to 4.47.2: * [merge] Improve help message and add standard command line options * [otlLib] Pass ttFont to name.addName in buildStatTable * [featureVars] Re-use FeatureVariationRecord's when possible - always obsolete fonttools. We have switched to python311 stack in SLE15 and need to get the obsoletes back to prevent XML External Entity (XXE) attacks (9f61271): thus not participating in CFF2 delta computation, similarly to how binary wheel is available for the given platform, e.g. pypy). - update to 4.47.0: * [varLib.models] New API for VariationModel: ``getMasterScalars`` and ``interpolateFromValuesAndScalars``. * [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, add a Summary page in the front, and an Index and Table-of-Contents in the back. Change the page size to Letter. * [Docs/designspaceLib] Defined a new ``public.fontInfo`` lib key, not used anywhere yet (#3358). * [featureVars] Allow to register the same set of substitution rules to multiple features. The ``addFeatureVariations`` function can now take a list of featureTags; similarly, the lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360). * [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it for features which are not already there. But raise ``VarLibError`` if the feature tag already has feature OBS-URL: https://build.opensuse.org/request/show/1142082 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=50
2024-01-29 13:59:48 +00:00
# spec file for package python-FontTools
#
# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
%bcond_without test
%else
%define psuffix %{nil}
%bcond_with test
%endif
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
%{?sle15_python_module_pythons}
Name: python-FontTools%{psuffix}
Version: 4.61.1
Release: 0
Summary: Suite of Tools and Libraries for Manipulating Fonts
License: MIT AND OFL-1.1
Group: Development/Languages/Python
URL: https://github.com/fonttools/fonttools
Accepting request 940599 from home:bnavigator:python-rpm-macros - Update to 4.28.3 * [subset] Fixed bug while subsetting COLR table, whereby incomplete layer records pointing to missing glyphs were being retained leading to struct.error upon compiling. Make it so that glyf glyph closure, which follows the COLR glyph closure, does not influence the COLR table subsetting (#2461, #2462). * [docs] Fully document the cmap and glyf tables (#2454, #2457). * [colorLib.unbuilder] Fixed CLI by deleting no longer existing parameter (180bb1867). - Release 4.28.2 * [otlLib] Remove duplicates when building coverage (#2433). * [docs] Add interrogate configuration (#2443). * [docs] Remove comment about missing “start” optional argument to calcChecksum (#2448). * [cu2qu/cli] Adapt to the latest ufoLib2. * [subset] Support subsetting SVG table and remove it from the list of drop by default tables (#534). * [subset] add --pretty-svg option to pretty print SVG table contents (#2452). * [merge] Support merging CFF tables (CID-keyed CFF is still not supported) (#2447). * [merge] Support --output-file (#2447). * [docs] Split table docs into individual pages (#2444). * [feaLib] Forbid empty classes (#2446). * [docs] Improve documentation for fontTools.ttLib.ttFont (#2442). - Release 4.28.1 * [subset] Fixed AttributeError while traversing a color glyph's Paint graph when there is no LayerList, which is optional (#2441). OBS-URL: https://build.opensuse.org/request/show/940599 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=25
2021-12-15 07:34:12 +00:00
# The PyPI archive lacks some test files, but the source is identical to the github archive
Source: https://github.com/fonttools/fonttools/archive/refs/tags/%{version}.tar.gz#/fonttools-%{version}.tar.gz
Accepting request 940599 from home:bnavigator:python-rpm-macros - Update to 4.28.3 * [subset] Fixed bug while subsetting COLR table, whereby incomplete layer records pointing to missing glyphs were being retained leading to struct.error upon compiling. Make it so that glyf glyph closure, which follows the COLR glyph closure, does not influence the COLR table subsetting (#2461, #2462). * [docs] Fully document the cmap and glyf tables (#2454, #2457). * [colorLib.unbuilder] Fixed CLI by deleting no longer existing parameter (180bb1867). - Release 4.28.2 * [otlLib] Remove duplicates when building coverage (#2433). * [docs] Add interrogate configuration (#2443). * [docs] Remove comment about missing “start” optional argument to calcChecksum (#2448). * [cu2qu/cli] Adapt to the latest ufoLib2. * [subset] Support subsetting SVG table and remove it from the list of drop by default tables (#534). * [subset] add --pretty-svg option to pretty print SVG table contents (#2452). * [merge] Support merging CFF tables (CID-keyed CFF is still not supported) (#2447). * [merge] Support --output-file (#2447). * [docs] Split table docs into individual pages (#2444). * [feaLib] Forbid empty classes (#2446). * [docs] Improve documentation for fontTools.ttLib.ttFont (#2442). - Release 4.28.1 * [subset] Fixed AttributeError while traversing a color glyph's Paint graph when there is no LayerList, which is optional (#2441). OBS-URL: https://build.opensuse.org/request/show/940599 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=25
2021-12-15 07:34:12 +00:00
BuildRequires: %{python_module devel >= 3.7}
BuildRequires: %{python_module pip}
Accepting request 1136795 from home:ecsos:python - Update to 4.47.0 - [varLib.models] New API for VariationModel: getMasterScalars and interpolateFromValuesAndScalars. - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, add a Summary page in the front, and an Index and Table-of-Contents in the back. Change the page size to Letter. - [Docs/designspaceLib] Defined a new public.fontInfo lib key, not used anywhere yet (#3358). - Changes from 4.46.0 - [featureVars] Allow to register the same set of substitution rules to multiple features. The addFeatureVariations function can now take a list of featureTags; similarly, the lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360). - [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it for features which are not already there. But raise VarLibError if the feature tag already has feature variations associated with it (#3363). - [varLib] Added addGSUBFeatureVariations function to add GSUB Feature Variations to an existing variable font from rules defined in a DesignSpace document (#3362). - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, a new test for "underweight" glyphs. The new test reports quite a few false-positives though. Please send feedback. - Changes from 4.45.1 - [varLib.interpolatable] Various bugfixes and improvements, better reporting, reduced false positives. - [ttGlyphSet] Added option to not recalculate glyf bounds (#3348). - Changes from 4.45.0 - [varLib.interpolator] Vastly improved algorithms. Also available now is --pdf and --html options to generate a PDF or HTML report of the interpolation issues. - The PDF/HTML report showcases the problematic masters, the interpolated broken glyph, as well as the proposed fixed version. - Changes from 4.44.3 - [subset] Only prune codepage ranges for OS/2.version >= 1, ignore otherwise (#3334). - [instancer] Ensure hhea vertical metrics stay in sync with OS/2 ones after instancing MVAR table containing 'hasc', 'hdsc' or 'hlgp' tags (#3297). - Changes from 4.44.2 - [glyf] Have Glyph.recalcBounds skip empty components (base glyph with no contours) when computing the bounding box of composite glyphs. This simply restores the existing behavior before some changes were introduced in fonttools 4.44.0 (#3333). - Changes from 4.44.1 - [feaLib] Ensure variable mark anchors are deep-copied while building since they get modified in-place and later reused (#3330). - [OS/2|subset] Added method to recalcCodePageRanges to OS/2 table class; added --prune-codepage-ranges to fonttools subset command (#3328, #2607). NOTE: this release was "yanked" from PyPI because it introduced a regression: #3334 - Changes from 4.44.0 - [instancer] Recalc OS/2 AvgCharWidth after instancing if default changes (#3317). - [otlLib] Make ClassDefBuilder class order match varLib.merger's, i.e. large classes first, then glyph lexicographic order (#3321, #3324). - [instancer] Allow not specifying any of min:default:max values and let be filled up with fvar's values (#3322, #3323). - [instancer] When running --update-name-table ignore axes that have no STAT axis values (#3318, #3319). - [Debg] When dumping to ttx, write the embedded JSON as multi-line string with indentation (92cbfee). - [varStore] Handle > 65535 items per encoding by splitting VarData subtable (#3310). - [subset] Handle null-offsets in MarkLigPos subtables. - [subset] Keep East Asian spacing fatures vhal, halt, chws, vchw by default (#3305). - [instancer.solver] Fixed case where axisDef < lower and upper < axisMax (#3304). - [glyf] Speed up compilation, mostly around recalcBounds (#3301). - [varLib.interpolatable] Speed it up when working on variable fonts, plus various micro-optimizations (#3300). - Require unicodedata2 >= 15.1.0 when installed with 'unicode' extra, contains UCD 15.1. - Changes from 4.43.1 - [EBDT] Fixed TypeError exception in _reverseBytes method triggered when dumping some bitmap fonts with ttx -z bitwise option (#3162). - [v/hhea] Fixed UnboundLocalError exception in recalc method when no vmtx or hmtx tables are present (#3290). - [bezierTools] Fixed incorrectly typed cython local variable leading to TypeError when calling calcQuadraticArcLength (#3288). - [feaLib/otlLib] Better error message when building Coverage table with missing glyph (#3286). - Changes from 4.43.0 - [subset] Set up lxml XMLParser(resolve_entities=False) when parsing OT-SVG documents to prevent XML External Entity (XXE) attacks (9f61271): https://codeql.github.com/codeql-query-help/python/py-xxe/ - [varLib.iup] Added workaround for a Cython bug in iup_delta_optimize that was leading to IUP tolerance being incorrectly initialised, resulting in sub-optimal deltas (6012643, cython/cython#5732). - [varLib] Added new command-line entry point fonttools varLib.avar to add an avar table to an existing VF from axes mappings in a .designspace file (0a3360e). - [instancer] Fixed bug whereby no longer used variation regions were not correctly pruned after VarData optimization (#3268). - Added support for Python 3.12 (#3283). - Changes from 4.42.1 - [t1Lib] Fixed several Type 1 issues (#3238, #3240). - [otBase/packer] Allow sharing tables reached by different offset sizes (#3241, #3236, 457f11c). - [varLib/merger] Fix Cursive attachment merging error when all anchors are NULL (#3248, #3247). - [ttLib] Fixed warning when calling addMultilingualName and ttFont parameter was not passed on to findMultilingualName (#3253). - Changes from 4.42.0 - [varLib] Use sentinel value 0xFFFF to mark a glyph advance in hmtx/vmtx as non participating, allowing sparse masters to contain glyphs for variation purposes other than {H,V}VAR (#3235). - [varLib/cff] Treat empty glyphs in non-default masters as missing, thus not participating in CFF2 delta computation, similarly to how varLib already treats them for gvar (#3234). - Added varLib.avarPlanner script to deduce 'correct' avar v1 axis mappings based on glyph average weights (#3223). - Changes from 4.41.1 - [subset] Fixed perf regression in v4.41.0 by making NameRecordVisitor only visit tables that do contain nameID references (#3213, #3214). - [varLib.instancer] Support instancing fonts containing null ConditionSet offsets in FeatureVariationRecords (#3211, #3212). - [statisticsPen] Report font glyph-average weight/width and font-wide slant. - [fontBuilder] Fixed head.created date incorrectly set to 0 instead of the current timestamp, regression introduced in v4.40.0 (#3210). - [varLib.merger] Support sparse CursivePos masters (#3209). - Changes from 4.41.0 - [fontBuilder] Fixed bug in setupOS2 with default panose attribute incorrectly being set to a dict instead of a Panose object (#3201). - [name] Added method to removeUnusedNameRecords in the user range (#3185). - [varLib.instancer] Fixed issue with L4 instancing (moving default) (#3179). - [cffLib] Use latin1 so we can roundtrip non-ASCII in {Full,Font,Family}Name (#3202). - [designspaceLib] Mark as optional in docs (as it is in the code). - [glyf-1] Fixed drawPoints() bug whereby last cubic segment becomes quadratic (#3189, #3190). - [fontBuilder] Propagate the 'hidden' flag to the fvar Axis instance (#3184). - [fontBuilder] Update setupAvar() to also support avar 2, fixing _add_avar() call site (#3183). - Added new voltLib.voltToFea submodule (originally Tiro Typeworks' "Volto") for converting VOLT OpenType Layout sources to FEA format (#3164). - Changes from 4.40.0 - Published native binary wheels to PyPI for all the python minor versions and platform and architectures currently supported that would benefit from this. They will include precompiled Cython-accelerated modules (e.g. cu2qu) without requiring to compile them from source. The pure-python wheel and source distribution will continue to be published as always (pip will automatically chose them when no binary wheel is available for the given platform, e.g. pypy). Use pip install --no-binary=fonttools fonttools to expliclity request pip to install from the pure-python source. - [designspaceLib|varLib] Add initial support for specifying axis mappings and build avar2 table from those (#3123). - [feaLib] Support variable ligature caret position (#3130). - [varLib|glyf] Added option to --drop-implied-oncurves; test for impliable oncurve points either before or after rounding (#3146, #3147, #3155, #3156). - [TTGlyphPointPen] Don't error with empty contours, simply ignore them (#3145). - [sfnt] Fixed str vs bytes remnant of py3 transition in code dealing with de/compiling WOFF metadata (#3129). - [instancer-solver] Fixed bug when moving default instance with sparse masters (#3139, #3140). - [feaLib] Simplify variable scalars that don’t vary (#3132). - [pens] Added filter pen that explicitly emits closing line when lastPt != movePt (#3100). - [varStore] Improve optimize algorithm and better document the algorithm (#3124, #3127). - Added quantization option (#3126). - Added CI workflow config file for building native binary wheels (#3121). - [fontBuilder] Added glyphDataFormat=0 option; raise error when glyphs contain cubic outlines but glyphDataFormat was not explicitly set to 1 (#3113, #3119). - [subset] Prune emptied GDEF.MarkGlyphSetsDef and remap indices; ensure GDEF is subsetted before GSUB and GPOS (#3114, #3118). - [xmlReader] Fixed issue whereby DSIG table data was incorrectly parsed (#3115, #2614). - [varLib/merger] Fixed merging of SinglePos with pos=0 (#3111, #3112). - [feaLib] Demote "Feature has not been defined" error to a warning when building aalt and referenced feature is empty (#3110). - [feaLib] Dedupe multiple substitutions with classes (#3105). - Add mssing recommends. - Add missing setuptools to fix build error under Leap. OBS-URL: https://build.opensuse.org/request/show/1136795 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=48
2024-01-05 14:42:14 +00:00
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: unzip
Accepting request 1136795 from home:ecsos:python - Update to 4.47.0 - [varLib.models] New API for VariationModel: getMasterScalars and interpolateFromValuesAndScalars. - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, add a Summary page in the front, and an Index and Table-of-Contents in the back. Change the page size to Letter. - [Docs/designspaceLib] Defined a new public.fontInfo lib key, not used anywhere yet (#3358). - Changes from 4.46.0 - [featureVars] Allow to register the same set of substitution rules to multiple features. The addFeatureVariations function can now take a list of featureTags; similarly, the lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360). - [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it for features which are not already there. But raise VarLibError if the feature tag already has feature variations associated with it (#3363). - [varLib] Added addGSUBFeatureVariations function to add GSUB Feature Variations to an existing variable font from rules defined in a DesignSpace document (#3362). - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, a new test for "underweight" glyphs. The new test reports quite a few false-positives though. Please send feedback. - Changes from 4.45.1 - [varLib.interpolatable] Various bugfixes and improvements, better reporting, reduced false positives. - [ttGlyphSet] Added option to not recalculate glyf bounds (#3348). - Changes from 4.45.0 - [varLib.interpolator] Vastly improved algorithms. Also available now is --pdf and --html options to generate a PDF or HTML report of the interpolation issues. - The PDF/HTML report showcases the problematic masters, the interpolated broken glyph, as well as the proposed fixed version. - Changes from 4.44.3 - [subset] Only prune codepage ranges for OS/2.version >= 1, ignore otherwise (#3334). - [instancer] Ensure hhea vertical metrics stay in sync with OS/2 ones after instancing MVAR table containing 'hasc', 'hdsc' or 'hlgp' tags (#3297). - Changes from 4.44.2 - [glyf] Have Glyph.recalcBounds skip empty components (base glyph with no contours) when computing the bounding box of composite glyphs. This simply restores the existing behavior before some changes were introduced in fonttools 4.44.0 (#3333). - Changes from 4.44.1 - [feaLib] Ensure variable mark anchors are deep-copied while building since they get modified in-place and later reused (#3330). - [OS/2|subset] Added method to recalcCodePageRanges to OS/2 table class; added --prune-codepage-ranges to fonttools subset command (#3328, #2607). NOTE: this release was "yanked" from PyPI because it introduced a regression: #3334 - Changes from 4.44.0 - [instancer] Recalc OS/2 AvgCharWidth after instancing if default changes (#3317). - [otlLib] Make ClassDefBuilder class order match varLib.merger's, i.e. large classes first, then glyph lexicographic order (#3321, #3324). - [instancer] Allow not specifying any of min:default:max values and let be filled up with fvar's values (#3322, #3323). - [instancer] When running --update-name-table ignore axes that have no STAT axis values (#3318, #3319). - [Debg] When dumping to ttx, write the embedded JSON as multi-line string with indentation (92cbfee). - [varStore] Handle > 65535 items per encoding by splitting VarData subtable (#3310). - [subset] Handle null-offsets in MarkLigPos subtables. - [subset] Keep East Asian spacing fatures vhal, halt, chws, vchw by default (#3305). - [instancer.solver] Fixed case where axisDef < lower and upper < axisMax (#3304). - [glyf] Speed up compilation, mostly around recalcBounds (#3301). - [varLib.interpolatable] Speed it up when working on variable fonts, plus various micro-optimizations (#3300). - Require unicodedata2 >= 15.1.0 when installed with 'unicode' extra, contains UCD 15.1. - Changes from 4.43.1 - [EBDT] Fixed TypeError exception in _reverseBytes method triggered when dumping some bitmap fonts with ttx -z bitwise option (#3162). - [v/hhea] Fixed UnboundLocalError exception in recalc method when no vmtx or hmtx tables are present (#3290). - [bezierTools] Fixed incorrectly typed cython local variable leading to TypeError when calling calcQuadraticArcLength (#3288). - [feaLib/otlLib] Better error message when building Coverage table with missing glyph (#3286). - Changes from 4.43.0 - [subset] Set up lxml XMLParser(resolve_entities=False) when parsing OT-SVG documents to prevent XML External Entity (XXE) attacks (9f61271): https://codeql.github.com/codeql-query-help/python/py-xxe/ - [varLib.iup] Added workaround for a Cython bug in iup_delta_optimize that was leading to IUP tolerance being incorrectly initialised, resulting in sub-optimal deltas (6012643, cython/cython#5732). - [varLib] Added new command-line entry point fonttools varLib.avar to add an avar table to an existing VF from axes mappings in a .designspace file (0a3360e). - [instancer] Fixed bug whereby no longer used variation regions were not correctly pruned after VarData optimization (#3268). - Added support for Python 3.12 (#3283). - Changes from 4.42.1 - [t1Lib] Fixed several Type 1 issues (#3238, #3240). - [otBase/packer] Allow sharing tables reached by different offset sizes (#3241, #3236, 457f11c). - [varLib/merger] Fix Cursive attachment merging error when all anchors are NULL (#3248, #3247). - [ttLib] Fixed warning when calling addMultilingualName and ttFont parameter was not passed on to findMultilingualName (#3253). - Changes from 4.42.0 - [varLib] Use sentinel value 0xFFFF to mark a glyph advance in hmtx/vmtx as non participating, allowing sparse masters to contain glyphs for variation purposes other than {H,V}VAR (#3235). - [varLib/cff] Treat empty glyphs in non-default masters as missing, thus not participating in CFF2 delta computation, similarly to how varLib already treats them for gvar (#3234). - Added varLib.avarPlanner script to deduce 'correct' avar v1 axis mappings based on glyph average weights (#3223). - Changes from 4.41.1 - [subset] Fixed perf regression in v4.41.0 by making NameRecordVisitor only visit tables that do contain nameID references (#3213, #3214). - [varLib.instancer] Support instancing fonts containing null ConditionSet offsets in FeatureVariationRecords (#3211, #3212). - [statisticsPen] Report font glyph-average weight/width and font-wide slant. - [fontBuilder] Fixed head.created date incorrectly set to 0 instead of the current timestamp, regression introduced in v4.40.0 (#3210). - [varLib.merger] Support sparse CursivePos masters (#3209). - Changes from 4.41.0 - [fontBuilder] Fixed bug in setupOS2 with default panose attribute incorrectly being set to a dict instead of a Panose object (#3201). - [name] Added method to removeUnusedNameRecords in the user range (#3185). - [varLib.instancer] Fixed issue with L4 instancing (moving default) (#3179). - [cffLib] Use latin1 so we can roundtrip non-ASCII in {Full,Font,Family}Name (#3202). - [designspaceLib] Mark as optional in docs (as it is in the code). - [glyf-1] Fixed drawPoints() bug whereby last cubic segment becomes quadratic (#3189, #3190). - [fontBuilder] Propagate the 'hidden' flag to the fvar Axis instance (#3184). - [fontBuilder] Update setupAvar() to also support avar 2, fixing _add_avar() call site (#3183). - Added new voltLib.voltToFea submodule (originally Tiro Typeworks' "Volto") for converting VOLT OpenType Layout sources to FEA format (#3164). - Changes from 4.40.0 - Published native binary wheels to PyPI for all the python minor versions and platform and architectures currently supported that would benefit from this. They will include precompiled Cython-accelerated modules (e.g. cu2qu) without requiring to compile them from source. The pure-python wheel and source distribution will continue to be published as always (pip will automatically chose them when no binary wheel is available for the given platform, e.g. pypy). Use pip install --no-binary=fonttools fonttools to expliclity request pip to install from the pure-python source. - [designspaceLib|varLib] Add initial support for specifying axis mappings and build avar2 table from those (#3123). - [feaLib] Support variable ligature caret position (#3130). - [varLib|glyf] Added option to --drop-implied-oncurves; test for impliable oncurve points either before or after rounding (#3146, #3147, #3155, #3156). - [TTGlyphPointPen] Don't error with empty contours, simply ignore them (#3145). - [sfnt] Fixed str vs bytes remnant of py3 transition in code dealing with de/compiling WOFF metadata (#3129). - [instancer-solver] Fixed bug when moving default instance with sparse masters (#3139, #3140). - [feaLib] Simplify variable scalars that don’t vary (#3132). - [pens] Added filter pen that explicitly emits closing line when lastPt != movePt (#3100). - [varStore] Improve optimize algorithm and better document the algorithm (#3124, #3127). - Added quantization option (#3126). - Added CI workflow config file for building native binary wheels (#3121). - [fontBuilder] Added glyphDataFormat=0 option; raise error when glyphs contain cubic outlines but glyphDataFormat was not explicitly set to 1 (#3113, #3119). - [subset] Prune emptied GDEF.MarkGlyphSetsDef and remap indices; ensure GDEF is subsetted before GSUB and GPOS (#3114, #3118). - [xmlReader] Fixed issue whereby DSIG table data was incorrectly parsed (#3115, #2614). - [varLib/merger] Fixed merging of SinglePos with pos=0 (#3111, #3112). - [feaLib] Demote "Feature has not been defined" error to a warning when building aalt and referenced feature is empty (#3110). - [feaLib] Dedupe multiple substitutions with classes (#3105). - Add mssing recommends. - Add missing setuptools to fix build error under Leap. OBS-URL: https://build.opensuse.org/request/show/1136795 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=48
2024-01-05 14:42:14 +00:00
Recommends: python-Brotli >= 1.1.0
Recommends: python-freetype-py >= 2.4.0
Accepting request 1189549 from home:frantisek.simorda:branches:openSUSE:Factory - Update to 4.53.1 * [feaLib] Improve the sharing of inline chained lookups (#3559) * [otlLib] Correct the calculation of OS/2.usMaxContext with reversed chaining contextual single substitutions (#3569) * [misc.visitor] Visitors search the inheritance chain of objects they are visiting (#3581) - Changes from 4.53.0 * [ttLib.removeOverlaps] Support CFF table to aid in downconverting CFF2 fonts (#3528) * [avar] Fix crash when accessing not-yet-existing attribute (#3550) * [docs] Add buildMathTable to otlLib.builder documentation (#3540) * [feaLib] Allow UTF-8 with BOM when reading features (#3495) * [SVGPathPen] Revert rounding coordinates to two decimal places by default (#3543) * [varLib.instancer] Refix output filename decision-making (#3545, #3544, #3548) - Changes from 4.52.4 * [varLib.cff] Restore and deprecate convertCFFtoCFF2 that was removed in 4.52.0 release as it is used by downstream projects (#3535). - Changes from 4.52.3 * Fixed a small syntax error in the reStructuredText-formatted NEWS.rst file which caused the upload to PyPI to fail for 4.52.2. No other code changes. - Changes from 4.52.2 * [varLib.interpolatable] Ensure that scipy/numpy output is JSON-serializable (#3522, #3526) * [housekeeping] Regenerate table lists, to fix pyinstaller packaging of the new VARC table (#3531, #3529) * [cffLib] Make CFFToCFF2 and CFF2ToCFF more robust (#3521, #3525) - Changes from 4.52.1 * Fixed a small syntax error in the reStructuredText-formatted NEWS.rst file which caused the upload to PyPI to fail for 4.52.0. - Changes from 4.52.0 * Added support for the new VARC (Variable Composite) table that is being proposed to OpenType spec (#3395). * For more info: https://github.com/harfbuzz/boring-expansion-spec/blob/main/VARC.md * [ttLib.main] Fixed decompiling all tables (90fed08). * [feaLib] Don't reference the same lookup index multiple times within the same feature record, it is only applied once anyway (#3520). * [cffLib] Moved methods to desubroutinize, remove hints and unused subroutines from subset module to cffLib (#3517). * [varLib.instancer] Added support for partial-instancing CFF2 tables! Also, added method to down-convert from CFF2 to CFF 1.0, and CLI entry points to convert CFF<->CFF2 (#3506). * [subset] Prune unused user name IDs even with --name-IDs='*' (#3410). * [ttx] use GNU-style getopt to intermix options and positional arguments (#3509). * [feaLib.variableScalar] Fixed value_at_location() method (#3491) * [psCharStrings] Shorten output of encodeFloat (#3492). * [bezierTools] Fix infinite-recursion in calcCubicArcLength (#3502). * [avar2] Implement avar2 support in TTFont.getGlyphSet() (#3473). - Changes from 4.51.0 * [ttLib] Optimization on loading aux fields (#3464). * [ttFont] Add reorderGlyphs (#3468). - Changes from 4.50.0 * [pens] Added decomposing filter pens that draw components as regular contours (#3460). * [instancer] Drop explicit no-op axes from TupleVariations (#3457). * [cu2qu/ufo] Return set of modified glyph names from fonts_to_quadratic (#3456). - Changes from 4.49.0 * [otlLib] Add API for building MATH table (#3446) - Changes from 4.48.1 * Fixed uploading wheels to PyPI, no code changes since v4.48.0. - Changes from 4.48.0 * [varLib] Do not log when there are no OTL tables to be merged. * [setup.py] Do not restrict lxml<5 any more, tests pass just fine with lxml>=5. * [feaLib] Remove glyph and class names length restrictions in FEA (#3424). * [roundingPens] Added transformRoundFunc parameter to the rounding pens to allow for custom rounding of the components' transforms (#3426). * [feaLib] Keep declaration order of ligature components within a ligature set, instead of sorting by glyph name (#3429). * [feaLib] Fixed ordering of alternates in aalt lookups, following the declaration order of feature references within the aalt feature block (#3430). * [varLib.instancer] Fixed a bug in the instancer's IUP optimization (#3432). * [sbix] Support sbix glyphs with new graphicType "flip" (#3433). * [svgPathPen] Added --glyphs option to dump the SVG paths for the named glyphs in the font (0572f78). * [designspaceLib] Added "description" attribute to <mappings> and <mapping> elements, and allow multiple <mappings> elements to group <mapping> elements that are logically related (#3435, #3437). * [otlLib] Correctly choose the most compact GSUB contextual lookup format (#3439). OBS-URL: https://build.opensuse.org/request/show/1189549 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=54
2024-07-31 15:45:41 +00:00
Recommends: python-lxml
Recommends: python-munkres >= 1.1.4
Recommends: python-reportlab
Accepting request 1136795 from home:ecsos:python - Update to 4.47.0 - [varLib.models] New API for VariationModel: getMasterScalars and interpolateFromValuesAndScalars. - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, add a Summary page in the front, and an Index and Table-of-Contents in the back. Change the page size to Letter. - [Docs/designspaceLib] Defined a new public.fontInfo lib key, not used anywhere yet (#3358). - Changes from 4.46.0 - [featureVars] Allow to register the same set of substitution rules to multiple features. The addFeatureVariations function can now take a list of featureTags; similarly, the lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360). - [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it for features which are not already there. But raise VarLibError if the feature tag already has feature variations associated with it (#3363). - [varLib] Added addGSUBFeatureVariations function to add GSUB Feature Variations to an existing variable font from rules defined in a DesignSpace document (#3362). - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, a new test for "underweight" glyphs. The new test reports quite a few false-positives though. Please send feedback. - Changes from 4.45.1 - [varLib.interpolatable] Various bugfixes and improvements, better reporting, reduced false positives. - [ttGlyphSet] Added option to not recalculate glyf bounds (#3348). - Changes from 4.45.0 - [varLib.interpolator] Vastly improved algorithms. Also available now is --pdf and --html options to generate a PDF or HTML report of the interpolation issues. - The PDF/HTML report showcases the problematic masters, the interpolated broken glyph, as well as the proposed fixed version. - Changes from 4.44.3 - [subset] Only prune codepage ranges for OS/2.version >= 1, ignore otherwise (#3334). - [instancer] Ensure hhea vertical metrics stay in sync with OS/2 ones after instancing MVAR table containing 'hasc', 'hdsc' or 'hlgp' tags (#3297). - Changes from 4.44.2 - [glyf] Have Glyph.recalcBounds skip empty components (base glyph with no contours) when computing the bounding box of composite glyphs. This simply restores the existing behavior before some changes were introduced in fonttools 4.44.0 (#3333). - Changes from 4.44.1 - [feaLib] Ensure variable mark anchors are deep-copied while building since they get modified in-place and later reused (#3330). - [OS/2|subset] Added method to recalcCodePageRanges to OS/2 table class; added --prune-codepage-ranges to fonttools subset command (#3328, #2607). NOTE: this release was "yanked" from PyPI because it introduced a regression: #3334 - Changes from 4.44.0 - [instancer] Recalc OS/2 AvgCharWidth after instancing if default changes (#3317). - [otlLib] Make ClassDefBuilder class order match varLib.merger's, i.e. large classes first, then glyph lexicographic order (#3321, #3324). - [instancer] Allow not specifying any of min:default:max values and let be filled up with fvar's values (#3322, #3323). - [instancer] When running --update-name-table ignore axes that have no STAT axis values (#3318, #3319). - [Debg] When dumping to ttx, write the embedded JSON as multi-line string with indentation (92cbfee). - [varStore] Handle > 65535 items per encoding by splitting VarData subtable (#3310). - [subset] Handle null-offsets in MarkLigPos subtables. - [subset] Keep East Asian spacing fatures vhal, halt, chws, vchw by default (#3305). - [instancer.solver] Fixed case where axisDef < lower and upper < axisMax (#3304). - [glyf] Speed up compilation, mostly around recalcBounds (#3301). - [varLib.interpolatable] Speed it up when working on variable fonts, plus various micro-optimizations (#3300). - Require unicodedata2 >= 15.1.0 when installed with 'unicode' extra, contains UCD 15.1. - Changes from 4.43.1 - [EBDT] Fixed TypeError exception in _reverseBytes method triggered when dumping some bitmap fonts with ttx -z bitwise option (#3162). - [v/hhea] Fixed UnboundLocalError exception in recalc method when no vmtx or hmtx tables are present (#3290). - [bezierTools] Fixed incorrectly typed cython local variable leading to TypeError when calling calcQuadraticArcLength (#3288). - [feaLib/otlLib] Better error message when building Coverage table with missing glyph (#3286). - Changes from 4.43.0 - [subset] Set up lxml XMLParser(resolve_entities=False) when parsing OT-SVG documents to prevent XML External Entity (XXE) attacks (9f61271): https://codeql.github.com/codeql-query-help/python/py-xxe/ - [varLib.iup] Added workaround for a Cython bug in iup_delta_optimize that was leading to IUP tolerance being incorrectly initialised, resulting in sub-optimal deltas (6012643, cython/cython#5732). - [varLib] Added new command-line entry point fonttools varLib.avar to add an avar table to an existing VF from axes mappings in a .designspace file (0a3360e). - [instancer] Fixed bug whereby no longer used variation regions were not correctly pruned after VarData optimization (#3268). - Added support for Python 3.12 (#3283). - Changes from 4.42.1 - [t1Lib] Fixed several Type 1 issues (#3238, #3240). - [otBase/packer] Allow sharing tables reached by different offset sizes (#3241, #3236, 457f11c). - [varLib/merger] Fix Cursive attachment merging error when all anchors are NULL (#3248, #3247). - [ttLib] Fixed warning when calling addMultilingualName and ttFont parameter was not passed on to findMultilingualName (#3253). - Changes from 4.42.0 - [varLib] Use sentinel value 0xFFFF to mark a glyph advance in hmtx/vmtx as non participating, allowing sparse masters to contain glyphs for variation purposes other than {H,V}VAR (#3235). - [varLib/cff] Treat empty glyphs in non-default masters as missing, thus not participating in CFF2 delta computation, similarly to how varLib already treats them for gvar (#3234). - Added varLib.avarPlanner script to deduce 'correct' avar v1 axis mappings based on glyph average weights (#3223). - Changes from 4.41.1 - [subset] Fixed perf regression in v4.41.0 by making NameRecordVisitor only visit tables that do contain nameID references (#3213, #3214). - [varLib.instancer] Support instancing fonts containing null ConditionSet offsets in FeatureVariationRecords (#3211, #3212). - [statisticsPen] Report font glyph-average weight/width and font-wide slant. - [fontBuilder] Fixed head.created date incorrectly set to 0 instead of the current timestamp, regression introduced in v4.40.0 (#3210). - [varLib.merger] Support sparse CursivePos masters (#3209). - Changes from 4.41.0 - [fontBuilder] Fixed bug in setupOS2 with default panose attribute incorrectly being set to a dict instead of a Panose object (#3201). - [name] Added method to removeUnusedNameRecords in the user range (#3185). - [varLib.instancer] Fixed issue with L4 instancing (moving default) (#3179). - [cffLib] Use latin1 so we can roundtrip non-ASCII in {Full,Font,Family}Name (#3202). - [designspaceLib] Mark as optional in docs (as it is in the code). - [glyf-1] Fixed drawPoints() bug whereby last cubic segment becomes quadratic (#3189, #3190). - [fontBuilder] Propagate the 'hidden' flag to the fvar Axis instance (#3184). - [fontBuilder] Update setupAvar() to also support avar 2, fixing _add_avar() call site (#3183). - Added new voltLib.voltToFea submodule (originally Tiro Typeworks' "Volto") for converting VOLT OpenType Layout sources to FEA format (#3164). - Changes from 4.40.0 - Published native binary wheels to PyPI for all the python minor versions and platform and architectures currently supported that would benefit from this. They will include precompiled Cython-accelerated modules (e.g. cu2qu) without requiring to compile them from source. The pure-python wheel and source distribution will continue to be published as always (pip will automatically chose them when no binary wheel is available for the given platform, e.g. pypy). Use pip install --no-binary=fonttools fonttools to expliclity request pip to install from the pure-python source. - [designspaceLib|varLib] Add initial support for specifying axis mappings and build avar2 table from those (#3123). - [feaLib] Support variable ligature caret position (#3130). - [varLib|glyf] Added option to --drop-implied-oncurves; test for impliable oncurve points either before or after rounding (#3146, #3147, #3155, #3156). - [TTGlyphPointPen] Don't error with empty contours, simply ignore them (#3145). - [sfnt] Fixed str vs bytes remnant of py3 transition in code dealing with de/compiling WOFF metadata (#3129). - [instancer-solver] Fixed bug when moving default instance with sparse masters (#3139, #3140). - [feaLib] Simplify variable scalars that don’t vary (#3132). - [pens] Added filter pen that explicitly emits closing line when lastPt != movePt (#3100). - [varStore] Improve optimize algorithm and better document the algorithm (#3124, #3127). - Added quantization option (#3126). - Added CI workflow config file for building native binary wheels (#3121). - [fontBuilder] Added glyphDataFormat=0 option; raise error when glyphs contain cubic outlines but glyphDataFormat was not explicitly set to 1 (#3113, #3119). - [subset] Prune emptied GDEF.MarkGlyphSetsDef and remap indices; ensure GDEF is subsetted before GSUB and GPOS (#3114, #3118). - [xmlReader] Fixed issue whereby DSIG table data was incorrectly parsed (#3115, #2614). - [varLib/merger] Fixed merging of SinglePos with pos=0 (#3111, #3112). - [feaLib] Demote "Feature has not been defined" error to a warning when building aalt and referenced feature is empty (#3110). - [feaLib] Dedupe multiple substitutions with classes (#3105). - Add mssing recommends. - Add missing setuptools to fix build error under Leap. OBS-URL: https://build.opensuse.org/request/show/1136795 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=48
2024-01-05 14:42:14 +00:00
Recommends: python-scipy >= 1.11.4
Recommends: python-sympy >= 1.12
Recommends: python-ufoLib2 >= 0.16.0
Recommends: python-unicodedata2 >= 17.0.0
Recommends: python-zopfli >= 0.1.4
Provides: python-fonttools = %{version}-%{release}
Obsoletes: fonttools < %{version}-%{release}
Provides: fonttools = %{version}-%{release}
BuildArch: noarch
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun): update-alternatives
%endif
%if %{with test}
Accepting request 1136795 from home:ecsos:python - Update to 4.47.0 - [varLib.models] New API for VariationModel: getMasterScalars and interpolateFromValuesAndScalars. - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, add a Summary page in the front, and an Index and Table-of-Contents in the back. Change the page size to Letter. - [Docs/designspaceLib] Defined a new public.fontInfo lib key, not used anywhere yet (#3358). - Changes from 4.46.0 - [featureVars] Allow to register the same set of substitution rules to multiple features. The addFeatureVariations function can now take a list of featureTags; similarly, the lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360). - [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it for features which are not already there. But raise VarLibError if the feature tag already has feature variations associated with it (#3363). - [varLib] Added addGSUBFeatureVariations function to add GSUB Feature Variations to an existing variable font from rules defined in a DesignSpace document (#3362). - [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, a new test for "underweight" glyphs. The new test reports quite a few false-positives though. Please send feedback. - Changes from 4.45.1 - [varLib.interpolatable] Various bugfixes and improvements, better reporting, reduced false positives. - [ttGlyphSet] Added option to not recalculate glyf bounds (#3348). - Changes from 4.45.0 - [varLib.interpolator] Vastly improved algorithms. Also available now is --pdf and --html options to generate a PDF or HTML report of the interpolation issues. - The PDF/HTML report showcases the problematic masters, the interpolated broken glyph, as well as the proposed fixed version. - Changes from 4.44.3 - [subset] Only prune codepage ranges for OS/2.version >= 1, ignore otherwise (#3334). - [instancer] Ensure hhea vertical metrics stay in sync with OS/2 ones after instancing MVAR table containing 'hasc', 'hdsc' or 'hlgp' tags (#3297). - Changes from 4.44.2 - [glyf] Have Glyph.recalcBounds skip empty components (base glyph with no contours) when computing the bounding box of composite glyphs. This simply restores the existing behavior before some changes were introduced in fonttools 4.44.0 (#3333). - Changes from 4.44.1 - [feaLib] Ensure variable mark anchors are deep-copied while building since they get modified in-place and later reused (#3330). - [OS/2|subset] Added method to recalcCodePageRanges to OS/2 table class; added --prune-codepage-ranges to fonttools subset command (#3328, #2607). NOTE: this release was "yanked" from PyPI because it introduced a regression: #3334 - Changes from 4.44.0 - [instancer] Recalc OS/2 AvgCharWidth after instancing if default changes (#3317). - [otlLib] Make ClassDefBuilder class order match varLib.merger's, i.e. large classes first, then glyph lexicographic order (#3321, #3324). - [instancer] Allow not specifying any of min:default:max values and let be filled up with fvar's values (#3322, #3323). - [instancer] When running --update-name-table ignore axes that have no STAT axis values (#3318, #3319). - [Debg] When dumping to ttx, write the embedded JSON as multi-line string with indentation (92cbfee). - [varStore] Handle > 65535 items per encoding by splitting VarData subtable (#3310). - [subset] Handle null-offsets in MarkLigPos subtables. - [subset] Keep East Asian spacing fatures vhal, halt, chws, vchw by default (#3305). - [instancer.solver] Fixed case where axisDef < lower and upper < axisMax (#3304). - [glyf] Speed up compilation, mostly around recalcBounds (#3301). - [varLib.interpolatable] Speed it up when working on variable fonts, plus various micro-optimizations (#3300). - Require unicodedata2 >= 15.1.0 when installed with 'unicode' extra, contains UCD 15.1. - Changes from 4.43.1 - [EBDT] Fixed TypeError exception in _reverseBytes method triggered when dumping some bitmap fonts with ttx -z bitwise option (#3162). - [v/hhea] Fixed UnboundLocalError exception in recalc method when no vmtx or hmtx tables are present (#3290). - [bezierTools] Fixed incorrectly typed cython local variable leading to TypeError when calling calcQuadraticArcLength (#3288). - [feaLib/otlLib] Better error message when building Coverage table with missing glyph (#3286). - Changes from 4.43.0 - [subset] Set up lxml XMLParser(resolve_entities=False) when parsing OT-SVG documents to prevent XML External Entity (XXE) attacks (9f61271): https://codeql.github.com/codeql-query-help/python/py-xxe/ - [varLib.iup] Added workaround for a Cython bug in iup_delta_optimize that was leading to IUP tolerance being incorrectly initialised, resulting in sub-optimal deltas (6012643, cython/cython#5732). - [varLib] Added new command-line entry point fonttools varLib.avar to add an avar table to an existing VF from axes mappings in a .designspace file (0a3360e). - [instancer] Fixed bug whereby no longer used variation regions were not correctly pruned after VarData optimization (#3268). - Added support for Python 3.12 (#3283). - Changes from 4.42.1 - [t1Lib] Fixed several Type 1 issues (#3238, #3240). - [otBase/packer] Allow sharing tables reached by different offset sizes (#3241, #3236, 457f11c). - [varLib/merger] Fix Cursive attachment merging error when all anchors are NULL (#3248, #3247). - [ttLib] Fixed warning when calling addMultilingualName and ttFont parameter was not passed on to findMultilingualName (#3253). - Changes from 4.42.0 - [varLib] Use sentinel value 0xFFFF to mark a glyph advance in hmtx/vmtx as non participating, allowing sparse masters to contain glyphs for variation purposes other than {H,V}VAR (#3235). - [varLib/cff] Treat empty glyphs in non-default masters as missing, thus not participating in CFF2 delta computation, similarly to how varLib already treats them for gvar (#3234). - Added varLib.avarPlanner script to deduce 'correct' avar v1 axis mappings based on glyph average weights (#3223). - Changes from 4.41.1 - [subset] Fixed perf regression in v4.41.0 by making NameRecordVisitor only visit tables that do contain nameID references (#3213, #3214). - [varLib.instancer] Support instancing fonts containing null ConditionSet offsets in FeatureVariationRecords (#3211, #3212). - [statisticsPen] Report font glyph-average weight/width and font-wide slant. - [fontBuilder] Fixed head.created date incorrectly set to 0 instead of the current timestamp, regression introduced in v4.40.0 (#3210). - [varLib.merger] Support sparse CursivePos masters (#3209). - Changes from 4.41.0 - [fontBuilder] Fixed bug in setupOS2 with default panose attribute incorrectly being set to a dict instead of a Panose object (#3201). - [name] Added method to removeUnusedNameRecords in the user range (#3185). - [varLib.instancer] Fixed issue with L4 instancing (moving default) (#3179). - [cffLib] Use latin1 so we can roundtrip non-ASCII in {Full,Font,Family}Name (#3202). - [designspaceLib] Mark as optional in docs (as it is in the code). - [glyf-1] Fixed drawPoints() bug whereby last cubic segment becomes quadratic (#3189, #3190). - [fontBuilder] Propagate the 'hidden' flag to the fvar Axis instance (#3184). - [fontBuilder] Update setupAvar() to also support avar 2, fixing _add_avar() call site (#3183). - Added new voltLib.voltToFea submodule (originally Tiro Typeworks' "Volto") for converting VOLT OpenType Layout sources to FEA format (#3164). - Changes from 4.40.0 - Published native binary wheels to PyPI for all the python minor versions and platform and architectures currently supported that would benefit from this. They will include precompiled Cython-accelerated modules (e.g. cu2qu) without requiring to compile them from source. The pure-python wheel and source distribution will continue to be published as always (pip will automatically chose them when no binary wheel is available for the given platform, e.g. pypy). Use pip install --no-binary=fonttools fonttools to expliclity request pip to install from the pure-python source. - [designspaceLib|varLib] Add initial support for specifying axis mappings and build avar2 table from those (#3123). - [feaLib] Support variable ligature caret position (#3130). - [varLib|glyf] Added option to --drop-implied-oncurves; test for impliable oncurve points either before or after rounding (#3146, #3147, #3155, #3156). - [TTGlyphPointPen] Don't error with empty contours, simply ignore them (#3145). - [sfnt] Fixed str vs bytes remnant of py3 transition in code dealing with de/compiling WOFF metadata (#3129). - [instancer-solver] Fixed bug when moving default instance with sparse masters (#3139, #3140). - [feaLib] Simplify variable scalars that don’t vary (#3132). - [pens] Added filter pen that explicitly emits closing line when lastPt != movePt (#3100). - [varStore] Improve optimize algorithm and better document the algorithm (#3124, #3127). - Added quantization option (#3126). - Added CI workflow config file for building native binary wheels (#3121). - [fontBuilder] Added glyphDataFormat=0 option; raise error when glyphs contain cubic outlines but glyphDataFormat was not explicitly set to 1 (#3113, #3119). - [subset] Prune emptied GDEF.MarkGlyphSetsDef and remap indices; ensure GDEF is subsetted before GSUB and GPOS (#3114, #3118). - [xmlReader] Fixed issue whereby DSIG table data was incorrectly parsed (#3115, #2614). - [varLib/merger] Fixed merging of SinglePos with pos=0 (#3111, #3112). - [feaLib] Demote "Feature has not been defined" error to a warning when building aalt and referenced feature is empty (#3110). - [feaLib] Dedupe multiple substitutions with classes (#3105). - Add mssing recommends. - Add missing setuptools to fix build error under Leap. OBS-URL: https://build.opensuse.org/request/show/1136795 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=48
2024-01-05 14:42:14 +00:00
BuildRequires: %{python_module Brotli >= 1.1.0}
BuildRequires: %{python_module pytest}
%endif
%python_subpackages
%description
FontTools is a suite of tools and libraries for manipulating fonts
written in Python.
It currently reads and writes TrueType font files, reads PostScript
Type 1 fonts, and more. It contains two command line programs to
convert TrueType fonts to an XML based format (called TTX) and back.
%prep
%autosetup -p1 -n fonttools-%{version}
# Remove shebang
sed -i -e '/^#!\//, 1d' Lib/fontTools/mtiLib/__init__.py
%build
%pyproject_wheel
%install
%pyproject_install
%python_clone -a %{buildroot}%{_mandir}/man1/ttx.1
%python_clone -a %{buildroot}%{_bindir}/ttx
%python_clone -a %{buildroot}%{_bindir}/pyftsubset
%python_clone -a %{buildroot}%{_bindir}/pyftmerge
Accepting request 940599 from home:bnavigator:python-rpm-macros - Update to 4.28.3 * [subset] Fixed bug while subsetting COLR table, whereby incomplete layer records pointing to missing glyphs were being retained leading to struct.error upon compiling. Make it so that glyf glyph closure, which follows the COLR glyph closure, does not influence the COLR table subsetting (#2461, #2462). * [docs] Fully document the cmap and glyf tables (#2454, #2457). * [colorLib.unbuilder] Fixed CLI by deleting no longer existing parameter (180bb1867). - Release 4.28.2 * [otlLib] Remove duplicates when building coverage (#2433). * [docs] Add interrogate configuration (#2443). * [docs] Remove comment about missing “start” optional argument to calcChecksum (#2448). * [cu2qu/cli] Adapt to the latest ufoLib2. * [subset] Support subsetting SVG table and remove it from the list of drop by default tables (#534). * [subset] add --pretty-svg option to pretty print SVG table contents (#2452). * [merge] Support merging CFF tables (CID-keyed CFF is still not supported) (#2447). * [merge] Support --output-file (#2447). * [docs] Split table docs into individual pages (#2444). * [feaLib] Forbid empty classes (#2446). * [docs] Improve documentation for fontTools.ttLib.ttFont (#2442). - Release 4.28.1 * [subset] Fixed AttributeError while traversing a color glyph's Paint graph when there is no LayerList, which is optional (#2441). OBS-URL: https://build.opensuse.org/request/show/940599 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=25
2021-12-15 07:34:12 +00:00
%python_clone -a %{buildroot}%{_bindir}/fonttools
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%if %{with test}
%check
Accepting request 584507 from home:TheBlackCat:branches:M17N - Update to version 3.24.1 * [varLib] Don’t remap the same DeviceTable twice in VarStore optimizer (#1206). * [varLib] Add --disable-iup option to fonttools varLib script, and a optimize=True keyword argument to varLib.build function, to optionally disable IUP optimization while building varfonts. * [ttCollection] Fixed issue while decompiling ttc with python3 (#1207). - Update to version 3.24.0 * [ttGlyphPen] Decompose composite glyphs if any components’ transform is too large to fit a F2Dot14 value, or clamp transform values that are (almost) equal to +2.0 to make them fit and avoid decomposing (#1200, #1204, #1205). * [ttx] Added new -g option to dump glyphs from the glyf table splitted as individual ttx files (#153, #1035, #1132, #1202). * Copied ufoLib.filenames module to fontTools.misc.filenames, used for the ttx split-glyphs option (#1202). * [feaLib] Added support for cvParameters blocks in Character Variant feautures cv01-cv99 (#860, #1169). * [Snippets] Added checksum.py script to generate/check SHA1 hash of ttx files (#1197). * [varLib.mutator] Fixed issue while instantiating some variable fonts whereby the horizontal advance width computed from gvar phantom points could turn up to be negative (#1198). * [varLib/subset] Fixed issue with subsetting GPOS variation data not picking up ValueRecord Device objects (54fd71f). * [feaLib/voltLib] In all AST elements, the location is no longer a required positional argument, but an optional kewyord argument (defaults to None). This will make it easier to construct feature AST from code (#1201). - Update to version 3.23.0 * [designspaceLib] Added an optional lib element to the designspace as a whole, as well as to the instance elements, to store arbitrary data in a property list dictionary, similar to the UFO’s lib. Added an optional font attribute to the SourceDescriptor, to allow operating on in-memory font objects (#1175). * [cffLib] Fixed issue with lazy-loading of attributes when attempting to set the CFF TopDict.Encoding (#1177, #1187). * [ttx] Fixed regression introduced in 3.22.0 that affected the split tables -s option (#1188). * [feaLib] Added IncludedFeaNotFound custom exception subclass, raised when an included feature file cannot be found (#1186). * [otTables] Changed VarIdxMap to use glyph names internally instead of glyph indexes. The old ttx dumps of HVAR/VVAR tables that contain indexes can still be imported (21cbab8, 38a0ffb). * [varLib] Implemented VarStore optimizer (#1184). * [subset] Implemented pruning of GDEF VarStore, HVAR and MVAR (#1179). * [sfnt] Restore backward compatiblity with numFonts attribute of SFNTReader object (#1181). * [merge] Initial support for merging LangSysRecords (#1180). * [ttCollection] don’t seek(0) when writing to possibly unseekable strems. * [subset] Keep all --name-IDs from 0 to 6 by default (#1170, #605, #114). * [cffLib] Added width module to calculate optimal CFF default and nominal glyph widths. * [varLib] Don’t fail if STAT already in the master fonts (#1166). - Fix conflict with old single-package version OBS-URL: https://build.opensuse.org/request/show/584507 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=3
2018-03-08 17:26:12 +00:00
export LANG=en_US.UTF-8
%pytest -ra
# We need these files to be installed for tests, but now we need them removed
# not to confuse %%files checks
%python_expand rm -r %{buildroot}%{$python_sitelib}
%if %{with libalternatives}
rm -r %{buildroot}%{_datadir}/libalternatives
%else
rm -r %{buildroot}%{_sysconfdir}/alternatives
%endif
rm -r %{buildroot}%{_bindir}
rm -r %{buildroot}%{_mandir}
%endif
%if %{without test}
%post
%python_install_alternative ttx ttx.1
%python_install_alternative pyftsubset
%python_install_alternative pyftmerge
Accepting request 940599 from home:bnavigator:python-rpm-macros - Update to 4.28.3 * [subset] Fixed bug while subsetting COLR table, whereby incomplete layer records pointing to missing glyphs were being retained leading to struct.error upon compiling. Make it so that glyf glyph closure, which follows the COLR glyph closure, does not influence the COLR table subsetting (#2461, #2462). * [docs] Fully document the cmap and glyf tables (#2454, #2457). * [colorLib.unbuilder] Fixed CLI by deleting no longer existing parameter (180bb1867). - Release 4.28.2 * [otlLib] Remove duplicates when building coverage (#2433). * [docs] Add interrogate configuration (#2443). * [docs] Remove comment about missing “start” optional argument to calcChecksum (#2448). * [cu2qu/cli] Adapt to the latest ufoLib2. * [subset] Support subsetting SVG table and remove it from the list of drop by default tables (#534). * [subset] add --pretty-svg option to pretty print SVG table contents (#2452). * [merge] Support merging CFF tables (CID-keyed CFF is still not supported) (#2447). * [merge] Support --output-file (#2447). * [docs] Split table docs into individual pages (#2444). * [feaLib] Forbid empty classes (#2446). * [docs] Improve documentation for fontTools.ttLib.ttFont (#2442). - Release 4.28.1 * [subset] Fixed AttributeError while traversing a color glyph's Paint graph when there is no LayerList, which is optional (#2441). OBS-URL: https://build.opensuse.org/request/show/940599 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=25
2021-12-15 07:34:12 +00:00
%python_install_alternative fonttools
%postun
%python_uninstall_alternative ttx
%python_uninstall_alternative pyftsubset
%python_uninstall_alternative pyftmerge
Accepting request 940599 from home:bnavigator:python-rpm-macros - Update to 4.28.3 * [subset] Fixed bug while subsetting COLR table, whereby incomplete layer records pointing to missing glyphs were being retained leading to struct.error upon compiling. Make it so that glyf glyph closure, which follows the COLR glyph closure, does not influence the COLR table subsetting (#2461, #2462). * [docs] Fully document the cmap and glyf tables (#2454, #2457). * [colorLib.unbuilder] Fixed CLI by deleting no longer existing parameter (180bb1867). - Release 4.28.2 * [otlLib] Remove duplicates when building coverage (#2433). * [docs] Add interrogate configuration (#2443). * [docs] Remove comment about missing “start” optional argument to calcChecksum (#2448). * [cu2qu/cli] Adapt to the latest ufoLib2. * [subset] Support subsetting SVG table and remove it from the list of drop by default tables (#534). * [subset] add --pretty-svg option to pretty print SVG table contents (#2452). * [merge] Support merging CFF tables (CID-keyed CFF is still not supported) (#2447). * [merge] Support --output-file (#2447). * [docs] Split table docs into individual pages (#2444). * [feaLib] Forbid empty classes (#2446). * [docs] Improve documentation for fontTools.ttLib.ttFont (#2442). - Release 4.28.1 * [subset] Fixed AttributeError while traversing a color glyph's Paint graph when there is no LayerList, which is optional (#2441). OBS-URL: https://build.opensuse.org/request/show/940599 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=25
2021-12-15 07:34:12 +00:00
%python_uninstall_alternative fonttools
%pre
%python_libalternatives_reset_alternative ttx
%python_libalternatives_reset_alternative pyftsubset
%python_libalternatives_reset_alternative pyftmerge
%python_libalternatives_reset_alternative fonttools
%files %{python_files}
%license LICENSE LICENSE.external
%doc README.rst NEWS.rst
%python_alternative %{_bindir}/pyftmerge
%python_alternative %{_bindir}/pyftsubset
%python_alternative %{_bindir}/ttx
Accepting request 940599 from home:bnavigator:python-rpm-macros - Update to 4.28.3 * [subset] Fixed bug while subsetting COLR table, whereby incomplete layer records pointing to missing glyphs were being retained leading to struct.error upon compiling. Make it so that glyf glyph closure, which follows the COLR glyph closure, does not influence the COLR table subsetting (#2461, #2462). * [docs] Fully document the cmap and glyf tables (#2454, #2457). * [colorLib.unbuilder] Fixed CLI by deleting no longer existing parameter (180bb1867). - Release 4.28.2 * [otlLib] Remove duplicates when building coverage (#2433). * [docs] Add interrogate configuration (#2443). * [docs] Remove comment about missing “start” optional argument to calcChecksum (#2448). * [cu2qu/cli] Adapt to the latest ufoLib2. * [subset] Support subsetting SVG table and remove it from the list of drop by default tables (#534). * [subset] add --pretty-svg option to pretty print SVG table contents (#2452). * [merge] Support merging CFF tables (CID-keyed CFF is still not supported) (#2447). * [merge] Support --output-file (#2447). * [docs] Split table docs into individual pages (#2444). * [feaLib] Forbid empty classes (#2446). * [docs] Improve documentation for fontTools.ttLib.ttFont (#2442). - Release 4.28.1 * [subset] Fixed AttributeError while traversing a color glyph's Paint graph when there is no LayerList, which is optional (#2441). OBS-URL: https://build.opensuse.org/request/show/940599 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=25
2021-12-15 07:34:12 +00:00
%python_alternative %{_bindir}/fonttools
%python_alternative %{_mandir}/man1/ttx.1%{?ext_man}
%{python_sitelib}/fontTools
Accepting request 1142082 from home:dirkmueller:Factory - update to 4.47.2: * [merge] Improve help message and add standard command line options * [otlLib] Pass ttFont to name.addName in buildStatTable * [featureVars] Re-use FeatureVariationRecord's when possible - always obsolete fonttools. We have switched to python311 stack in SLE15 and need to get the obsoletes back to prevent XML External Entity (XXE) attacks (9f61271): thus not participating in CFF2 delta computation, similarly to how binary wheel is available for the given platform, e.g. pypy). - update to 4.47.0: * [varLib.models] New API for VariationModel: ``getMasterScalars`` and ``interpolateFromValuesAndScalars``. * [varLib.interpolatable] Various bugfixes and rendering improvements. In particular, add a Summary page in the front, and an Index and Table-of-Contents in the back. Change the page size to Letter. * [Docs/designspaceLib] Defined a new ``public.fontInfo`` lib key, not used anywhere yet (#3358). * [featureVars] Allow to register the same set of substitution rules to multiple features. The ``addFeatureVariations`` function can now take a list of featureTags; similarly, the lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360). * [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it for features which are not already there. But raise ``VarLibError`` if the feature tag already has feature OBS-URL: https://build.opensuse.org/request/show/1142082 OBS-URL: https://build.opensuse.org/package/show/M17N/python-FontTools?expand=0&rev=50
2024-01-29 13:59:48 +00:00
%{python_sitelib}/fonttools-%{version}.dist-info
%endif
%changelog