5175 Commits

Author SHA1 Message Date
Martin Hosken
0902cea8b6 Fix default lookups for a language 2018-08-17 10:32:55 +07:00
Behdad Esfahbod
c895f4f4a2 [subset] Add --layout-scripts
Fixes https://github.com/fonttools/fonttools/issues/1303
2018-08-01 14:29:06 -07:00
Cosimo Lupo
d125f52339
Bump version: 3.29.0 → 3.29.1.dev0 2018-07-26 15:12:56 +01:00
Cosimo Lupo
2ff6f930a1
Release 3.29.0 2018-07-26 15:12:55 +01:00
Cosimo Lupo
b97267ca7f
NEWS.rst: fixup
[ci skip]
2018-07-26 15:10:47 +01:00
Cosimo Lupo
84b5bbdc0d
Update changelog
[ci skip]
2018-07-26 15:09:31 +01:00
Cosimo Lupo
83f9156f8d
Merge pull request #1302 from moyogo/fix-subtable-break
Fix subtable break
2018-07-26 11:16:58 +01:00
Denis Moyogo Jacquerye
18ad93fb41 feaLib: reset forceSubtableBreak_ to False 2018-07-26 11:06:24 +01:00
Denis Moyogo Jacquerye
fdf96904b3 feaLib tests: update PairPos subtable tests
The subtable break is being forced after every pos, it shouldn’t.
2018-07-26 11:06:17 +01:00
Cosimo Lupo
68951b7c3d
feaLib: when name table not selected, skip building featureNames blocks
ufo2ft feature writer calls feaLib builder with tables=[GSUB] first, to run closure
over glyph substitutions; if the GSUB features contains 'featureNames' blocks, then
an AssertionError will be raised; in this case, we can simply skip building the
FeatureParams tables as we haven't build the name records they point to.
2018-07-26 10:51:37 +01:00
Cosimo Lupo
4f94da9d4d
appveyor: remove pythonX.Y.bat hack and simplify
running 'py' as tox environment is a shorthand for 'basepython=python', which means
tox will create the venv using the 'python' executable which is first in the path,
which in the case of Appveyor environment, it's the same where tox was installed in.
2018-07-25 19:33:39 +01:00
Cosimo Lupo
553f23f1db
tox.ini: require at least tox >= 3.0 2018-07-25 19:14:25 +01:00
Behdad Esfahbod
05f95f0f58 [otBase] Try ExtensionLookup if other offset-overflow methods fail
If offset overflow happens other than between Lookup and SubTable, or
within SubTable, then we don't know how to fix it currently.  Now we
try to put that lookup in an Extension lookup anyway, since that will
isolate it and sharing with other lookups won't happen, hopefully
avoiding the overflow.

This is really a bandaid... What we want is the 99proof branch to
be finished and replace our current packing algorithm.

Fixes https://github.com/fonttools/fonttools/issues/1296
2018-07-25 11:06:44 -07:00
Behdad Esfahbod
642cb03296 Remove unused line of code 2018-07-25 11:06:44 -07:00
Cosimo Lupo
7b4a9e3b58
appveyor: fixup 2018-07-25 19:06:20 +01:00
Cosimo Lupo
b88caadb8f
run-test.sh: use tox to run the tests
still works as before, only that now it requires tox to be available in the /home/clupo/.pyenv/plugins/pyenv-virtualenv/shims:/home/clupo/.pyenv/shims:/home/clupo/.pyenv/bin:/home/clupo/.pyenv/plugins/pyenv-virtualenv/bin:/home/clupo/.local/bin:/home/clupo/bin:/home/clupo/.cargo/bin:/home/clupo/Applications/node-v6.11.4-linux-x64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin, else it will fail
2018-07-25 19:03:05 +01:00
Cosimo Lupo
d79b2dd6c7
tox/appveyor: don't use TOXPYTHON env var to select basepython; write a pythonX.Y.bat wrapper instead 2018-07-25 19:03:05 +01:00
Cosimo Lupo
8991f2c097
Merge pull request #1300 from anthrotype/explicit-subtable-break
support explicit "subtable" breaks in kerning lookups
2018-07-25 11:58:26 +01:00
Cosimo Lupo
3734b6c036
cffLib/specializer: minor; use < instead of <= maxstack - 1 2018-07-25 11:56:32 +01:00
Cosimo Lupo
334440b56d
Merge pull request #1301 from irori/stacksize
[cffLib.specializer] Leave 1 stack free area for subroutinizer use
2018-07-25 10:44:19 +01:00
Kunihiko Sakamoto
35377bc93b Fix test 2018-07-25 18:22:18 +09:00
Kunihiko Sakamoto
41a21cce27 [cffLib.specializer] Leave 1 stack free area for subroutinizer use 2018-07-25 17:29:27 +09:00
Cosimo Lupo
33084b74cf
Tests: add tests for 'subtable' breaks 2018-07-24 17:14:39 +01:00
Cosimo Lupo
9456ae9485
feaLib: support explicit 'subtable' statements in PairPos lookups
Fixes https://github.com/fonttools/fonttools/issues/1279
2018-07-24 17:13:52 +01:00
Cosimo Lupo
d3229d5777
feaLib: ensure languagesystems using 'DFLT' script tag precede all others
https://github.com/fonttools/fonttools/pull/1292#issuecomment-407427544

this is to match makeotf's behavior

https://github.com/adobe-type-tools/afdko/pull/498/files#diff-17824930b3cdfb707ae56e1f42bccec6R2305
2018-07-24 16:17:23 +01:00
Cosimo Lupo
1740d18584
Merge pull request #1292 from silnrsi/bugfix2
More depths to allowing languages in DFLT
2018-07-24 15:24:50 +01:00
Cosimo Lupo
098b0ade72
appveyor: test on python3.7 64-bit; no longer test on 2.7 x64 and 3.6 x86
appveyor is slooow. It's enough we test 2.7 on 32-bit and 3.6 and 3.7 for 64-bit. I think..
2018-07-24 12:23:40 +01:00
Cosimo Lupo
6f94e2ce23
travis: remove python3.4, add python3.7 2018-07-24 12:22:15 +01:00
Cosimo Lupo
38566f3a30
subset_test: minor 2018-07-24 12:17:59 +01:00
Cosimo Lupo
248ae41e9d
loggingTools: fix CapturingLogHandler to work with py37
we can't set the logger.level directly because in py37 the logger has a _cache
attribute and that needs to be invalidated by calling setLevel method.

also, I noticed we weren't restoring the original 'disabled' attribute value...

And we need to also set/restore the 'propagate' attribute.
2018-07-24 12:17:59 +01:00
Cosimo Lupo
6105c41f34
tox.ini: add py37 env 2018-07-24 12:17:59 +01:00
Cosimo Lupo
5a1ccf1640
Merge pull request #1297 from anthrotype/fix-mark-base-overflow
atttempt to fix offset overflows in MarkBasePos subtables
2018-07-23 12:58:39 +01:00
Cosimo Lupo
d7ac0ad359
subset: write default file extension based on --flavor or sfntVersion
Fixes https://github.com/fonttools/fonttools/issues/1298
2018-07-21 18:28:33 +01:00
Cosimo Lupo
0df51c58e0
otTables_test: add unit test for splitMarkBasePos 2018-07-19 17:56:35 +01:00
Cosimo Lupo
6e8e431dee
otTables: try to fix MarkBasePos subtable overflows
Fixes https://github.com/googlei18n/fontmake/issues/450
2018-07-19 17:52:00 +01:00
Cosimo Lupo
2798bf6d1f
otTables: print subtable type when can't split in fixSubTableOverFlows 2018-07-19 17:50:43 +01:00
Cosimo Lupo
a526b7170c
tests: fix expected results after Unicode 11 update
fixes https://github.com/fonttools/fonttools/issues/1291
2018-07-12 11:35:16 +01:00
Cosimo Lupo
0ae200f310
requirements.txt: bump unicodedata2 to 11.0.0 2018-07-12 11:35:16 +01:00
Cosimo Lupo
452c85ecef
Update Blocks, Scripts and ScriptExtensions for Unicode 11
I run: python3 MetaTools/buildUCD.py
2018-07-12 11:35:16 +01:00
Martin Hosken
d5a1e5257e Simplify code for language statement 2018-07-09 21:10:46 +01:00
Martin Hosken
17de50c172 Add DFLT script languagesystem test 2018-07-09 20:11:57 +01:00
Martin Hosken
6d6b9c69d4 Fix tests 2018-07-09 17:02:48 +01:00
Martin Hosken
d76f447775 More depths to allowing languages in DFLT 2018-07-09 16:41:54 +01:00
Cosimo Lupo
87178f413a
Merge pull request #1290 from fonttools/xmlwriter-context-manager
Add context manager to XMLWriter
2018-07-09 13:26:10 +02:00
Miguel Sousa
523c31dd0b Add context manager to XMLWriter
93103c08ca (r29633076)
2018-07-08 22:12:44 -07:00
Miguel Sousa
8d7774a3e8 [pscharstrings] Optimize the charstring's bytecode
by encoding as integers all float values that have no decimal portion.

This optimization is expected to reduce the file size of CFF2 fonts that have intermediate masters.

Related to https://github.com/adobe-type-tools/afdko/issues/444

Many thanks to @cjchapman for the help on the fixed point math
2018-06-29 09:54:00 -07:00
Cosimo Lupo
ad597a49b4
Merge pull request #1285 from bgermann/master
Add missing import
2018-06-28 13:21:34 +01:00
bgermann
d438f15118
Add missing import 2018-06-28 14:07:14 +02:00
Cosimo Lupo
a2622d7222
Merge pull request #1278 from silnrsi/bugfix2
Allow any languages under DFLT script
2018-06-20 11:30:06 +01:00
Martin Hosken
29d67a90c5 Update tests to not require removed assertion 2018-06-20 09:57:07 +01:00