17
0
2021-12-16 01:00:49 +00:00
committed by Git OBS Bridge
5 changed files with 245 additions and 14 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d9cf618ab76afb42a79dcc0b4b5e5ee7ec1534f7ad9da3809bb15ddfcedc073d
size 4381290

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:44d8953e0b522c704afc8dd6a5ec2a86b58bca950e506f9c7e8b3c5f2c29eecd
size 2944993

View File

@@ -1,3 +1,234 @@
-------------------------------------------------------------------
Wed Dec 15 10:20:49 UTC 2021 - Ben Greiner <code@bnavigator.de>
- remove curves.json now included in the GitHub archive
-------------------------------------------------------------------
Sun Dec 12 18:18:46 UTC 2021 - Ben Greiner <code@bnavigator.de>
- 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).
- Release 4.28.0
* Dropped support for EOL Python 3.6, require Python 3.7 (#2417).
* [ufoLib/glifLib] Make filename-clash checks faster by using a
set instead of a list (#2422).
* [subset] Don't crash if optional ClipList and LayerList are
None (empty) (#2424, 2439).
* [OT-SVG] Removed support for old deprecated version 1 and
embedded color palettes, which were never officially part of
the OpenType SVG spec. Upon compile, reuse offsets to SVG
documents that are identical (#2430).
* [feaLib] Added support for Variable Feature File syntax. This
is experimental and subject to change until it is finalized in
the Adobe FEA spec (#2432).
* [unicodedata] Update Scripts/ScriptExtensions/Blocks to
UnicodeData 14.0 (#2437).
- Release 4.27.1
* [otlLib] Fixed error when chained contextual lookup builder
overflows (#2404, #2411).
* [bezierTools] Fixed two floating-point bugs: one when computing
t for a point lying on an almost horizontal/vertical line;
another when computing the intersection point between a curve
and a line (#2413).
- Release 4.27.0
* [ttLib/otTables] Cleaned up virtual GID handling: allow virtual
GIDs in Coverage and ClassDef readers; removed unused allowVID
argument from TTFont constructor, and requireReal argument in
TTFont.getGlyphID method. Make TTFont.setGlyphOrder clear
reverse glyphOrder map, and assume glyphOrder internal
attribute is never modified outside setGlyphOrder; added
TTFont.getGlyphNameMany and getGlyphIDMany (#1536, #1654,
#2334, #2398).
* [py23] Dropped internal use of fontTools.py23 module to fix
deprecation warnings in client code that imports from fontTools
(#2234, #2399, #2400).
* [subset] Fix subsetting COLRv1 clip boxes when font is loaded
lazily (#2408).
- Release 4.26.2
* [otTables] Added missing CompositeMode.PLUS operator (#2390).
- Release 4.26.1
* [transform] Added transformVector and transformVectors methods
to the Transform class. Similar to transformPoint but ignore
the translation part (#2386).
- Release 4.26.0
* [xmlWriter] Default to "\n" for newlinestr instead of
platform-specific os.linesep (#2384).
* [otData] Define COLRv1 ClipList and ClipBox (#2379).
* [removeOverlaps/instancer] Added --ignore-overlap-errors option
to work around Skia PathOps.Simplify bug (#2382, #2363,
google/fonts#3365).
* NOTE: This will be the last version to support Python 3.6.
FontTools will require Python 3.7 or above from the next
release (#2350)
- Release 4.25.2
* [COLRv1] Various changes to sync with the latest CORLv1 draft
spec. In particular: define COLR.VarIndexMap, remove/inline
ColorIndex struct, add VarIndexBase to PaintVar* tables
(#2372); add reduced-precicion specialized transform Paints;
define Angle as fraction of half circle encoded as F2Dot14; use
FWORD (int16) for all Paint center coordinates; change
PaintTransform to have an offset to Affine2x3;
* [ttLib] when importing XML, only set sfntVersion if the font
has no reader and is empty (#2376)
- Release 4.25.1
* [ttGlyphPen] Fixed bug in TTGlyphPointPen, whereby open
contours (i.e. starting with segmentType "move") would throw
NotImplementedError. They are now treated as if they are
closed, like with the TTGlyphPen (#2364, #2366).
- Release 4.25.0
* [tfmLib] Added new library for parsing TeX Font Metric (TFM)
files (#2354).
* [TupleVariation] Make shared tuples order deterministic on
python < 3.7 where Counter (subclass of dict) doesn't remember
insertion order (#2351, #2353).
* [otData] Renamed COLRv1 structs to remove 'v1' suffix and match
the updated draft spec: 'LayerV1List' -> 'LayerList',
'BaseGlyphV1List' -> 'BaseGlyphList', 'BaseGlyphV1Record' ->
'BaseGlyphPaintRecord' (#2346). Added 8 new PaintScale* tables:
with/without centers, uniform vs non-uniform. Added
*AroundCenter variants to PaintRotate and PaintSkew: the
default versions no longer have centerX/Y, but default to
origin. PaintRotate, PaintSkew and PaintComposite formats were
re-numbered. NOTE: these are breaking changes; clients using
the experimental COLRv1 API will have to be updated (#2348).
* [pointPens] Allow GuessSmoothPointPen to accept a tolerance.
Fixed call to math.atan2 with x/y parameters inverted. Sync the
code with fontPens (#2344).
* [post] Fixed parsing post table format 2.0 when it contains
extra garbage at the end of the stringData array (#2314).
* [subset] drop empty features unless 'size' with FeatureParams
table (#2324).
* [otlLib] Added otlLib.optimize module; added GPOS compaction
algorithm. The compaction can be run on existing fonts with
fonttools otlLib.optimize or using the snippet compact_gpos.py.
There's experimental support for compacting fonts at
compilation time using an environment variable, but that might
be removed later (#2326).
- Release 4.24.4
* [subset/instancer] Fixed AttributeError when instantiating a VF
that contains GPOS ValueRecords with Device tables but without
the respective non-Device values (e.g. XAdvDevice without
XAdvance). When not explicitly set, the latter are assumed to
be 0 (#2323).
- Release 4.24.3
* [otTables] Fixed AttributeError in methods that split
LigatureSubst, MultipleSubst and AlternateSubst subtables when
an offset overflow occurs. The Format attribute was removed in
v4.22.0 (#2319).
- Release 4.24.2
* [ttGlyphPen] Fixed typing annotation of TTGlyphPen glyphSet
parameter (#2315).
* Fixed two instances of DeprecationWarning: invalid escape
sequence (#2311).
- Release 4.24.1
* [subset] Fixed AttributeError when SinglePos subtable has None
Value (ValueFormat 0) (#2312, #2313).
- Release 4.24.0
* [pens] Add ttGlyphPen.TTGlyphPointPen similar to TTGlyphPen
(#2205).
- Release 4.23.1
* [subset] Fix KeyError after subsetting COLR table that
initially contains both v0 and v1 color glyphs when the subset
only requested v1 glyphs; we were not pruning the v0 portion of
the table (#2308).
* [colorLib] Set LayerV1List attribute to None when empty, it's
optional in CORLv1 (#2308).
- Release 4.23.0
* [designspaceLib] Allow to use \\UNC absolute paths on Windows
(#2299, #2306).
* [varLib.merger] Fixed bug where VarLibMergeError was raised
with incorrect parameters (#2300).
* [feaLib] Allow substituting a glyph class with NULL to delete
multiple glyphs (#2303).
* [glyf] Fixed NameError exception in getPhantomPoints (#2295,
#2305).
* [removeOverlaps] Retry pathops.simplify after rounding path
coordinates to integers if it fails the first time using
floats, to work around a rare and hard to debug Skia bug
(#2288).
* [varLib] Added support for building, reading, writing and
optimizing 32-bit ItemVariationStore as used in COLRv1 table
(#2285).
* [otBase/otConverters] Add array readers/writers for int types
(#2285).
* [feaLib] Allow more than one lookahead glyph/class in
contextual positioning with "value at end" (#2293, #2294).
* [COLRv1] Default varIdx should be 0xFFFFFFFF (#2297, #2298).
* [pens] Make RecordingPointPen actually pass on identifiers;
replace asserts with explicit PenError exception (#2284).
* [mutator] Round lsb for CF2 fonts as well (#2286).
- Release 4.22.1
* [feaLib] Skip references to named lookups if the lookup block
definition is empty, similarly to makeotf. This also fixes an
AttributeError while generating aalt feature (#2276, #2277).
* [subset] Fixed bug with --no-hinting implementation for Device
tables (#2272, #2275). The previous code was alwyas dropping
Device tables if no-hinting was requested, but some Device
tables (DeltaFormat=0x8000) are also used to encode variation
indices and need to be retained.
* [otBase] Fixed bug in getting the ValueRecordSize when
decompiling MVAR table with lazy=True (#2273, #2274).
* [varLib/glyf/gvar] Optimized and simplified GlyphCoordinates
and TupleVariation classes, use bytearray where possible,
refactored phantom-points calculations. We measured about 30%
speedup in total time of loading master ttfs, building gvar,
and saving (#2261, #2266).
* [subset] Fixed AssertionError while pruning unused CPAL
palettes when 0xFFFF is present (#2257, #2259).
- Release 4.22.0
* [ttLib] Remove .Format from Coverage, ClassDef, SingleSubst,
LigatureSubst, AlternateSubst, MultipleSubst (#2238).
ATTENTION: This will change your TTX dumps!
* [misc.arrayTools] move Vector to its own submodule, and rewrite
as a tuple subclass (#2201).
* [docs] Added a terminology section for varLib (#2209).
* [varLib] Move rounding to VariationModel, to avoid error
accumulation from multiple deltas (#2214)
* [varLib] Explain merge errors in more human-friendly terms
(#2223, #2226)
* [otlLib] Correct some documentation (#2225)
* [varLib/otlLib] Allow merging into VariationFont without first
saving GPOS PairPos2 (#2229)
* [subset] Improve PairPosFormat2 subsetting (#2221)
* [ttLib] TTFont.save: create file on disk as late as possible
(#2253)
* [cffLib] Add missing CFF2 dict operators LanguageGroup and
ExpansionFactor (#2249) ATTENTION: This will change your TTX
dumps!
- Support for python36 has been dropped
- Use Github archive instead of zipfile from PyPI because it has
the test fonts.
- The `fonttools` command is now documented and tested in the test
suite.
-------------------------------------------------------------------
Sat May 1 22:01:14 UTC 2021 - Ben Greiner <code@bnavigator.de>

View File

@@ -1,5 +1,5 @@
#
# spec file for package python-FontTools-test
# spec file
#
# Copyright (c) 2021 SUSE LLC
#
@@ -26,16 +26,17 @@
%endif
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
%define skip_python36 1
Name: python-FontTools%{psuffix}
Version: 4.21.1
Version: 4.28.3
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
Source: https://files.pythonhosted.org/packages/source/f/fonttools/fonttools-%{version}.zip
Source1: https://raw.githubusercontent.com/fonttools/fonttools/master/Tests/cu2qu/data/curves.json
BuildRequires: %{python_module devel}
# 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}-gh.tar.gz
BuildRequires: %{python_module devel >= 3.7}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -56,11 +57,10 @@ BuildArch: noarch
BuildRequires: %{python_module Brotli >= 1.0.1}
BuildRequires: %{python_module fs >= 2.2.0}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module scipy >= 1.5.1}
BuildRequires: %{python_module sympy}
BuildRequires: %{python_module ufoLib2 >= 0.6.2}
BuildRequires: %{python_module zopfli >= 0.1.6}
# TW does not have python36-scipy anymore (NEP 29). Tests are automatically skipped.
BuildRequires: %{python_module scipy >= 1.5.1 if (%python-base without python36-base)}
%endif
%if "%{python_flavor}" == "python3" || "%{python_provides}" == "python3"
Obsoletes: fonttools < %{version}-%{release}
@@ -81,7 +81,6 @@ convert TrueType fonts to an XML based format (called TTX) and back.
%setup -q -n fonttools-%{version}
# Remove shebang
sed -i -e '/^#!\//, 1d' Lib/fontTools/mtiLib/__init__.py
cp %{SOURCE1} Tests/cu2qu/data/curves.json
%build
%python_build
@@ -93,9 +92,8 @@ cp %{SOURCE1} Tests/cu2qu/data/curves.json
%python_clone -a %{buildroot}%{_bindir}/ttx
%python_clone -a %{buildroot}%{_bindir}/pyftsubset
%python_clone -a %{buildroot}%{_bindir}/pyftmerge
%python_clone -a %{buildroot}%{_bindir}/fonttools
%python_expand %fdupes %{buildroot}%{$python_sitelib}
# remove undocumented and non working script
rm %{buildroot}%{_bindir}/fonttools
%endif
%if %{with test}
@@ -109,11 +107,13 @@ export LANG=en_US.UTF-8
%python_install_alternative ttx ttx.1
%python_install_alternative pyftsubset
%python_install_alternative pyftmerge
%python_install_alternative fonttools
%postun
%python_uninstall_alternative ttx
%python_uninstall_alternative pyftsubset
%python_uninstall_alternative pyftmerge
%python_uninstall_alternative fonttools
%files %{python_files}
%license LICENSE LICENSE.external
@@ -121,6 +121,7 @@ export LANG=en_US.UTF-8
%python_alternative %{_bindir}/pyftmerge
%python_alternative %{_bindir}/pyftsubset
%python_alternative %{_bindir}/ttx
%python_alternative %{_bindir}/fonttools
%python_alternative %{_mandir}/man1/ttx.1%{?ext_man}
%{python_sitelib}/fontTools
%{python_sitelib}/fonttools-%{version}*-info