7116 Commits

Author SHA1 Message Date
Cosimo Lupo
e16a9fe4ce
Release 4.0.0 2019-08-22 13:00:40 +02:00
Cosimo Lupo
0b88812237
.gitignore: remove unused entries
the boilerplate .gitignore from Github was too broad and all-catching.
It included things like 'lib' (which is where all modules are in fonttools...)
or stuff for tools which we never use.
So I just deleted those.
2019-08-22 13:00:27 +02:00
Cosimo Lupo
11ab975162
Update changelog [skip ci] 2019-08-22 12:23:18 +02:00
Khaled Hosny
197b36fef4 [feaLib] Don’t accept hex/octal numbers everywhere
Only in name, nameid, sizemenuname and Character.
2019-08-17 13:43:18 +02:00
Khaled Hosny
ae239722d4 [feaLib] Correctly handle octal numbers
From https://www.adobe.com/devnet/opentype/afdko/topic_feature_file_syntax.html#9.e:
> Decimal numbers must begin with a non-0 digit, octal numbers with a 0
> digit, and hexadecimal numbers with a 0x prefix to numbers and
> hexadecimal letters a-f or A-F.

Fixes https://github.com/fonttools/fonttools/issues/1541
2019-08-17 13:43:18 +02:00
Khaled Hosny
6cb0a56020 [cffLib] Make sure glyph names are unique
Similar to what we do with “post” table names. I’d have said the font is
broken, but all applications I tried it with loaded it just fine, though
they differed in which glyph to pick from the duplicate ones.

Fixes https://github.com/fonttools/fonttools/issues/1602
2019-08-17 12:51:31 +02:00
Just van Rossum
0ea19f3bd3
[ttLib] allow the glyf table to be incomplete when dumping to XML (#1681)
[ttLib] Allow the glyf table to be incomplete (to not contain everything from the glyph order) when writing to XML. This partially addresses #684 in that it will allow the font Ambrosia.otb to be dumped with ttx (but not recompiled). Log a warning when a glyph is not present.
2019-08-15 18:46:14 +02:00
Nikolaus Waxweiler
848b37c48a
Merge pull request #1693 from fonttools/py3-clean-out-py2-deps
Remove dependencies for Python < 3.6
2019-08-13 14:29:11 +01:00
Nikolaus Waxweiler
008973a50c Remove remaining unnecessary python_version markers 2019-08-13 14:09:36 +01:00
Nikolaus Waxweiler
7875714cc0 Remove dependencies for Python < 3.6 2019-08-13 11:54:55 +01:00
Cosimo Lupo
38a8eb0e34
varLib.models: fix KeyError when no on-axis points while sorting masters
E.g. when trying to model/plot an unusual designspace like: fonttools varLib.plot 0,0 -1,-1 1,-1 -1,1 1,1
2019-08-12 12:59:45 +02:00
Nikolaus Waxweiler
630a31e552
Merge pull request #1690 from fonttools/py3-varLib-remove-py23-imports
varLib: Remove py23 imports
2019-08-12 11:45:28 +01:00
Nikolaus Waxweiler
60584262e1
Merge pull request #1689 from fonttools/update-gitignore
Update gitignore with generic boilerplate
2019-08-12 11:44:31 +01:00
Nikolaus Waxweiler
0f3eaca219 models.py: minor lint fix 2019-08-10 22:20:24 +01:00
Nikolaus Waxweiler
68a5ceac6d varLib: Remove py23 imports 2019-08-10 15:39:02 +01:00
Nikolaus Waxweiler
d77223a54f Update gitignore
https://raw.githubusercontent.com/github/gitignore/master/Python.gitignore
2019-08-09 16:43:54 +01:00
Nikolaus Waxweiler
14716c8491
Merge pull request #1687 from fonttools/py3-update-readme
Update Readme for Python 3.6+ requirement
2019-08-09 13:34:10 +01:00
Cosimo Lupo
0354a4d4c6
Bump version: 3.44.1.dev0 → 4.0.0.dev0 2019-08-09 13:22:08 +01:00
Nikolaus Waxweiler
c233fb9bfd Update Readme for Python 3.6+ requirement 2019-08-09 13:19:21 +01:00
Cosimo Lupo
e13fca3449
Merge pull request #1686 from madig/make-py3-only
Make code Python 3 only
2019-08-09 13:01:13 +01:00
Nikolaus Waxweiler
01328213c7 Remove __future__ imports 2019-08-09 12:20:13 +01:00
Nikolaus Waxweiler
ab45b3b0c1 Pare down py23 module to Python 3 symbols only, deprecate 2019-08-09 11:30:39 +01:00
Nikolaus Waxweiler
93a358320f setup.py: Mark as Python 3.6+ only
Needs pip 9.0.0+ to honor.
2019-08-09 11:30:05 +01:00
Just van Rossum
5d6f08fd95
[ttLib] fix UnboundLocalError for empty loca/glyph tables (#1680)
* Rename last to pos, and next to nextPos
* make sure nextPos is initialized, to avoid UnboundLocalError on an empty glyf table, partially addressing #684
2019-08-03 13:42:37 +02:00
Nikolaus Waxweiler
4c86ca608f
Merge pull request #1679 from madig/ds-instance-default-font-attr
Add a default InstanceDescriptor.font attribute
2019-08-02 15:39:53 +01:00
Nikolaus Waxweiler
0b9ad5ab80 Add a default InstanceDescriptor.font attribute 2019-08-02 13:40:15 +01:00
Cosimo Lupo
5ac0b9c04e
Merge pull request #1678 from anthrotype/ci-skip-py27
travis/appveyor: no longer run tests on python2.7
2019-08-02 12:03:53 +01:00
Cosimo Lupo
421715b751
travis/appveyor: no longer run tests on python2.7 2019-08-02 11:56:28 +01:00
Cosimo Lupo
bcba6abce5
Bump version: 3.44.0 → 3.44.1.dev0 2019-08-02 11:41:09 +01:00
Cosimo Lupo
04da40e226
Release 3.44.0 2019-08-02 11:41:08 +01:00
Cosimo Lupo
5770a9d630
README: set python 3.6 as minimum required in next fonttools v4 2019-08-02 11:23:49 +01:00
Cosimo Lupo
41528e9f16
Update changelog 2019-08-02 11:17:24 +01:00
Khaled Hosny
71ea0cbe07
Merge pull request #1677 from fonttools/fdselct-format-4
[cffLib] Support FDSselect format 4
2019-08-02 01:05:27 +02:00
Miguel Sousa
43a55050f2
Merge pull request #1669 from fonttools/cff2-fixes
[cffLib specializer] Fix bug in programToCommands with CFF2 charstrings
2019-08-01 13:25:59 -07:00
Khaled Hosny
ad4bb343fc [cffLib] Support FDSselect format 4
Introduced in CFF2 table, but code does not limit it to CFF2 table. If
FDSelect format is set to 4, it will be read/written regardless of the
table version.
2019-08-01 21:28:46 +02:00
Khaled Hosny
97b61b6b1f
Merge pull request #1674 from fonttools/subset-sbix
[subset] Support sbix table
2019-08-01 10:29:18 +02:00
Just van Rossum
a017ac03bc
Merge pull request #1676 from baileyparker/fix_t1_eexec_end_parsing
[t1Lib] Fixes #1675 - T1 eexec end finding spec compliance
2019-08-01 07:16:22 +02:00
Bailey Parker
e9802c50bb
Fixes style 2019-08-01 01:08:25 -04:00
Bailey Parker
6f4e44f13d
Fixes #1675 - T1 eexec end finding spec compliance
The T1 spec (https://www-cdf.fnal.gov/offline/PostScript/T1_SPEC.PDF) on
page 14 says that:

> The text encrypted by eexec must be followed by 512 ASCII zeros. There may be
> white space characters (blank, tab, carriage return or line feed)
> interspersed among these zeros.

  * Add a failing test case with white space characters interspersed
    among the trailing zeros after the eexec

  * Fix eexec end finding so that it passes this new test case
2019-08-01 00:02:12 -04:00
Khaled Hosny
4db8cb237f [subset] Support sbix table
Test font is a subset of:
https://github.com/djrrb/Bungee/blob/master/fonts/Bungee_Color_Fonts/BungeeColor-Regular_sbix_MacOS.ttf
2019-08-01 01:52:38 +02:00
Cosimo Lupo
f9d12be58f
Merge pull request #1672 from fonttools/pyup-scheduled-update-2019-07-29
Scheduled weekly dependency update for week 30
2019-07-31 16:50:18 +01:00
Cosimo Lupo
cf612321d9
Merge pull request #1628 from fonttools/partial-instancer
add new varLib.instancer module
2019-07-31 16:41:25 +01:00
Cosimo Lupo
7ffd6a3d0f
instancer: minor changes following Evan's review 2019-07-31 16:31:38 +01:00
Cosimo Lupo
5455517689
Merge remote-tracking branch 'origin/master' into partial-instancer 2019-07-31 15:22:48 +01:00
Read Roberts
4ee5e6da16 [cffLib specializer] Fix bug in programToCommands with CFF2 charstrings
When checking if there was an initial width argument, old logic did not correctly sum the number of blend and non-blend arguments before the first hint or moveto operator.

Added test case. Old logic dropped the arguments for the hmoveto in the last glyph.
2019-07-30 20:25:38 -07:00
pyup-bot
c1b252f0d5 Update fs from 2.4.8 to 2.4.9 2019-07-29 16:24:05 +01:00
Cosimo Lupo
31391a2a17
requirements: pin lxml==4.3.5 for py35 as well
not just py27.

https://travis-ci.org/fonttools/fonttools/jobs/564917367

Maybe the latest lxml is casting the attributes to a built-in dict type,
which only retains the insertion order from 3.6 onwards?
2019-07-29 12:09:15 +01:00
Cosimo Lupo
fe1a3422bd
requirements: pin lxml version for py27
lxml 4.4.0 breaks OrderedDict attributes in py27 so we pin to previous version
https://bugs.launchpad.net/lxml/+bug/1838252
2019-07-29 11:51:29 +01:00
Cosimo Lupo
b59ac7f13e
Revert "Merge pull request #1671 from anthrotype/varlib-single-master-vf"
This reverts commit f3c99cfef211336a9c6921552462ee1661fbcede, reversing
changes made to 1dcb3c2bde86e9977bb384046e594e35ecd18796.
2019-07-29 10:45:25 +01:00
Cosimo Lupo
f3c99cfef2
Merge pull request #1671 from anthrotype/varlib-single-master-vf
varLib: don't build empty HVAR or gvar tables
2019-07-26 13:36:06 +01:00