3496 Commits

Author SHA1 Message Date
Parag A Nemade
2326ed6f50
Remove py_modules sstruct and xmlWriter from setup.py for issue#696
Signed-off-by: Parag A Nemade <pnemade@fedoraproject.org>
2016-12-07 10:30:48 +05:30
Cosimo Lupo
162cf8936a
Bump version: 3.2.3 → 3.3.0 2016-12-06 15:44:58 +00:00
Cosimo Lupo
af18936984
update changelog for 3.3.0 2016-12-06 11:29:14 +00:00
Cosimo Lupo
3ab01515a5
Remove top-level sstruct and xmlWriter aliases
You should use the sstruct and xmlWriter modules that are in fontTools.misc.

Fixes #696
2016-12-06 11:16:17 +00:00
Behdad Esfahbod
9ca34a08ec [STAT] Update for version 1.1; hasn't made it into spec yet! 2016-12-04 21:22:47 -08:00
Cosimo Lupo
c31a185076
updated changelog for 3.3.0 2016-12-04 13:22:50 +00:00
Cosimo Lupo
b424722ad1 Merge pull request #744 from fonttools/fix-for-issue-740
Fix for #740.
2016-12-04 13:16:48 +00:00
Cosimo Lupo
af15a34b7f
update changelong for 3.3.0 2016-12-04 12:45:35 +00:00
Cosimo Lupo
f59c3c59ed Merge pull request #757 from anthrotype/fix-round3-None
[py23] fix inconsistency of built-in round on Python 3.5 if second argument is None
2016-12-04 10:56:08 +00:00
Behdad Esfahbod
1bd7183d97 Merge pull request #758 from fonttools/STAT
Implement STAT table
2016-12-02 21:30:19 -06:00
Sascha Brawer
0de6e8d4ff Update table list for STAT table 2016-12-02 19:14:32 -08:00
Sascha Brawer
e32762024c [STAT] Fix unit tests 2016-12-02 19:12:26 -08:00
Sascha Brawer
8b78a7890f [STAT] Fix unit tests and implementation of STAT table
Still need to look at one failing test case. Disabling it for now.
2016-12-02 15:26:49 -08:00
Sascha Brawer
84da076bb9 [STAT] Fix one test case 2016-12-02 14:54:03 -08:00
Sascha Brawer
82b8af68c5 Fix names in test case for STAT table AxisValue format 3 2016-12-02 14:26:59 -08:00
Behdad Esfahbod
d80bb58723 More STAT 2016-12-02 14:14:48 -08:00
Behdad Esfahbod
913b3c477c Finish STAT table
Test needs fix.
2016-12-02 14:06:13 -08:00
Sascha Brawer
59368c424a WIP: Implement STAT table 2016-12-02 13:37:42 -08:00
justvanrossum
289fd62d8f added assert, as suggested by @behdad in #749 2016-12-02 14:24:46 +01:00
Cosimo Lupo
c02ac33e35
py23_test: add test for second None argument 2016-12-02 12:15:47 +00:00
Cosimo Lupo
e7867529ad
py23: update round3 docstring to indicate that None is an allowable argument 2016-12-02 12:15:47 +00:00
Cosimo Lupo
f38cde159b
py23: in Python3 < 3.6, round3 wraps built-in round() to workaround inconsistent behaviour between floats/ints and ndigits=None 2016-12-02 12:15:47 +00:00
Cosimo Lupo
6775add8b0
Bump version: 3.2.2 → 3.2.3 2016-12-02 10:19:36 +00:00
Cosimo Lupo
3e03d6061e
updated changelog for 3.2.3 2016-12-02 10:09:35 +00:00
Cosimo Lupo
9d8dacbedc Merge pull request #755 from anthrotype/round3-optimize
[py23] further optimizie round3 function
2016-12-01 22:04:56 +00:00
Cosimo Lupo
eb8654dc4e
py23: move import decimal to top-level scope 2016-12-01 17:43:35 +00:00
Cosimo Lupo
7abd4d281c
py23_test: minor whitespace 2016-12-01 17:24:01 +00:00
Cosimo Lupo
2fbf371232
py23_test: add unit tests for isclose() backport 2016-12-01 17:13:09 +00:00
Cosimo Lupo
b09501fd8b
py23: only use the slow round3 implementation for half-way, even cases; add backport of py35 math.isclose() 2016-12-01 17:12:20 +00:00
Adrien Tétar
2df7241f9c Merge pull request #754 from fonttools/round3-optimize
[py23] optimize round3 function
2016-11-30 20:20:37 +01:00
Cosimo Lupo
63621b347d
py23_test: in round2/round3, drop support for ndigit with __index__ attribute; add test for when a number is already an integer 2016-11-30 13:01:20 +00:00
Cosimo Lupo
f742ea07e8
py23: in round3, avoid rounding if number is already int; return the same type when called with two args
We only define 'round3' for PY2 and 'round2' for PY3, and also make sure 'round3' is always an alias of
the built-in 'round' on Python 3; and similarly 'round2' is an alias of built-in 'round' on Python 2.

Thus, for clarity, one can do:

    from fontTools.misc.py23 import round3 as round

or

    from fontTools.misc.py23 import round2 as round

and be certain that the fast built-in implementation will be used on the
respective python major version.
2016-11-30 12:58:58 +00:00
Cosimo Lupo
5de665fffe Merge pull request #752 from fonttools/subset-non-bmp
[subset] workaround for "narrow" py2 builds and --text= option
2016-11-29 18:38:37 +00:00
Cosimo Lupo
16d0e5e8ad
subset: workaround for narrow py2 builds when iterating over non-BMP chars in unicode string
Fixes https://github.com/fonttools/fonttools/issues/750
2016-11-29 15:49:05 +00:00
Cosimo Lupo
99307e8991
subset_test: unit tests for subsetting non-BMP characters with --text/--text-file options 2016-11-29 15:45:07 +00:00
Cosimo Lupo
bcd4268442
subset/testdata: add a version of TestTTF-Regular.ttx containing an additional non-BMP character, U+1F6D2 2016-11-29 15:42:51 +00:00
justvanrossum
e5d2d49900 two more doctests 2016-11-29 14:42:20 +01:00
justvanrossum
8fa2ee1d95 Do the capping before calculating the normalized value to avoid ZeroDivisionError when default == lower or default == upper. Added doctests to verify. Fixes #749 2016-11-29 14:38:46 +01:00
Parag Nemade
167ee6041e Make inspect.py file compatible to run with python2 and python3 (#748)
Signed-off-by: Parag A Nemade <pnemade@fedoraproject.org>
2016-11-28 07:33:24 -06:00
Cosimo Lupo
fd77eff51e Merge pull request #747 from moyogo/appveyor
appveyor: latest setuptools fixed
2016-11-27 10:17:36 +00:00
moyogo
c81d213a84 appveyor: latest setuptools fixed 2016-11-27 10:00:13 +00:00
justvanrossum
f713c93340 made warning even more specific 2016-11-26 14:05:23 +01:00
justvanrossum
7eff97e08b made warning more specific 2016-11-26 14:05:23 +01:00
justvanrossum
4a5c838b5b Improve the warnings issued when 'useless' FontDict key/value pairs are provided either by an OTF, or a TTX file; It now warns reliably in both those cases. 2016-11-26 14:05:23 +01:00
justvanrossum
ce73bba3f3 use log.warning() instead of log.log(logging.WARNING, ...) 2016-11-26 14:05:23 +01:00
justvanrossum
cce31c9950 Also warn when keys are ignored upon compile. 2016-11-26 14:05:23 +01:00
justvanrossum
8d22c39d0b Output an XML comment with the keys that were ignored; Added references to the other issues involved. 2016-11-26 14:05:23 +01:00
justvanrossum
f9d265d1e6 This commit fixes #740.
Commits 3063def and 5b47971 introduced a separate fontDictOperators list for FontDict, only listing those TopDict key/value pairs that are actually used in the FontDict context. It provided a fallback that TTX files containing such "useless" key/value pairs would not be rejected.

However, the code still rejected binary fonts that contained such values, even though it didn't before, and yes, such fonts exist. Also: such fonts are not broken per spec, they just contain some fields that otherwise no one ever looks at, so it's a little harsh to reject them.

This patch removes most of the special FontDict code, and uses everything from TopDict, *except* the order attribute: it sets that to a list of the relevant keys for the FontDict. The effect of this is that "useless" key/value pairs are ignored, not just upon reading XML, but also upon decompilation and compilation of binary fonts. It improves on the previous XML reading behavior in that it no longer silently ignores key typos in the TTX input.

Ideally, we would *output* everything that is actually in the FontDict to TTX, and only ignore the values when compiling, but I didn't find a clean solution for that, so I decided to just fix the issue.
2016-11-26 14:05:23 +01:00
moyogo
ea92dd75f1 appveyor: use setuptools==28.8.0 since 29.0.0 doesn’t install cli-{32,64}.exe and other binaries 2016-11-26 09:38:41 +00:00
Cosimo Lupo
400e8e8dd0
Bump version: 3.2.1 → 3.2.2 2016-11-24 17:19:58 +00:00