6259 Commits

Author SHA1 Message Date
Behdad Esfahbod
b563e6673c [varLib] Implement GPOS binary interpolation for PairPosFormat1 2016-10-22 22:47:18 +02:00
moyogo
b5002eb5d4 OS/2: if fsSelection bit 6 is on bits then 0 and 5 must be clear 2016-10-22 13:06:30 +01:00
moyogo
c46423df3a OS/2: warn when fsSelection bits defined in version 4 are on but version < 4 2016-10-22 13:06:30 +01:00
Cosimo Lupo
8089d64aec Merge pull request #717 from anthrotype/round-hmtx
[hmtx/vmtx] Round float values to int
2016-10-21 14:20:19 +01:00
Cosimo Lupo
0ab640c4bc
[_h_m_t_x_test] add test for rounding floats 2016-10-21 12:42:01 +01:00
Cosimo Lupo
5e3734c91e
[_h_m_t_x] round float values to int
No need to issue warnings, as we don't do that either for glyf coordinates.
Fixes #593
2016-10-21 12:40:00 +01:00
Cosimo Lupo
048e995e41 Merge pull request #714 from anthrotype/xmlwriter-newlinestr
[ttx/xmlWriter] allow to override OS-specific line endings
2016-10-20 18:15:24 +01:00
Cosimo Lupo
ce609addd0 [ttx] add --newline option to explicitly control line endings 2016-10-20 17:22:12 +01:00
Cosimo Lupo
2552d224a3 [testTools] use 'newlinestr' for makeXMLWriter() helper function 2016-10-20 16:57:49 +01:00
Cosimo Lupo
543be9cfbf [xmlWriter_test] test custom 'newlinestr' values in XMLWriter constructor 2016-10-20 16:56:41 +01:00
Cosimo Lupo
d235e124b4 [ttLib] add 'newlinestr=None' kwarg to TTFont.saveXML, passed on to XMLWriter instances 2016-10-20 16:54:31 +01:00
Cosimo Lupo
d874782ee4 [xmlWriter] add 'newlinestr' argument for overriding os-specific line endings
By default (newlinestr=None), the XMLWriter will still use the `os.linesep` as the
newline string.
Otherwise, it will use the specified `newlinestr`.

This is useful when TTX files under version control are being written from
multiple platforms; in which case, one usually wants to always use one
specific line ending (most likely LF, which is what the XML spec itself
normalizes it to).
2016-10-20 16:53:07 +01:00
moyogo
678876325e Add hhea tests 2016-10-18 18:18:09 +02:00
moyogo
004a5b7361 feaLib: hhea tableVersion = 0x00010000 2016-10-18 18:18:09 +02:00
moyogo
5b785950f8 feaLib: add test for vhea 2016-10-18 18:18:09 +02:00
moyogo
f55c60c4df feaLib: add vhea table 2016-10-18 18:18:09 +02:00
moyogo
074f6ea009 Add vhea tests 2016-10-18 18:18:09 +02:00
moyogo
bd4d43e7c5 feaLib: hhea test with hex version 2016-10-18 18:18:09 +02:00
moyogo
6e85a6c4fb otConverters: use fixedTools fixedToVersion() and versionToFixed() 2016-10-18 18:18:09 +02:00
moyogo
cf2c6ec127 vhea: tableVersion as L instead of 16.16F, hex in XML 2016-10-18 18:18:09 +02:00
moyogo
f67d0eb826 hhea: tableVersion as L instead of 16.16F, hex in XML 2016-10-18 18:18:09 +02:00
moyogo
f591e8c503 fixedTools: add ensureVersionIsLong() and versionToFixed() 2016-10-18 18:18:09 +02:00
moyogo
d7a3ae3f3d vhea: vhea.reserved0 should be vhea.caretOffset 2016-10-18 18:18:09 +02:00
Cosimo Lupo
5526dc8e17 README.md: add PyPI badge
[skip ci]
2016-10-18 12:23:52 +01:00
Cosimo Lupo
51da9ba81e start new release cycle 2016-10-18 12:21:51 +01:00
Cosimo Lupo
4cb0bb1ff5 Merge pull request #47 from unified-font-object/deploy
Deploy to PyPI and Github Releases on tags
2016-10-18 12:07:47 +01:00
Cosimo Lupo
03114c3b47 setup.py: version 2.0.0 2016-10-18 12:04:40 +01:00
Cosimo Lupo
61b93e9a14 configure deployment to Github Releases and PyPI upon tags 2016-10-18 12:04:40 +01:00
Cosimo Lupo
c86c970219 .gitignore: add .eggs/ and .tox/ folders
.eggs/ is where setuptools downloads the setup and test requirements.

.tox/ is the folder containing Tox's cache and virtual environments

[skip ci]
2016-10-18 11:09:43 +01:00
Adrien Tétar
8a1075cfe4 Merge pull request #45 from anthrotype/testdata
move all test data inside the inlined ufoLib/test modules, and install them
2016-10-17 20:53:02 +02:00
Cosimo Lupo
116bc0b6d2 setup.cfg: include LICENSE.txt in wheel distribution packages 2016-10-17 19:41:15 +01:00
Cosimo Lupo
3b9ced71e0 move all test data inside the inlined ufoLib/test modules, and install them
Since the test suite is inlined, it makes sense to also have the test data installed alongside the test modules.
So all the content of the two top-level folders Data and TestData is now placed inside Lib/ufoLib/test/testadata.
The MANIFEST.in has been adjusted accordingly.
The `install_package_data` in setup.py ensures the package data specified in the manifest is installed with the package.

This way anyone who installs ufoLib (even the wheel from PyPI) can run the test suite with `pytest --pyargs ufoLib`.
2016-10-17 19:41:13 +01:00
Cosimo Lupo
d7b7cbd9cd Merge pull request #706 from fonttools/hmtx-width-ushort
[_h_m_t_x] Read advanceWidth as unsigned short (uint16)
2016-10-17 19:31:53 +01:00
Adrien Tétar
21b0f40ddc Merge pull request #44 from anthrotype/setup-fixes
setup.py: point package url to github repo; remove `import fontTools` check
2016-10-17 17:41:34 +02:00
Cosimo Lupo
6bfe462ba7 setup.py: point package url to github repo; remove import fontTools check
The `url` field in setup.py must be the home page for the package.
I moved the url to the UFO spec in the 'long_description', so it will show up in the PyPI project page.

Checking for `import fontTools` is redundant since dependency resolution is now automatic.
2016-10-17 16:18:57 +01:00
Cosimo Lupo
835872946d Merge pull request #43 from anthrotype/fonttools-3.1.2
specify fonttools 3.1.2 from PyPI in both setup.py and requirements.txt
2016-10-17 15:34:52 +01:00
Cosimo Lupo
e7aa1768c0 specify fonttools 3.1.2 from PyPI in both setup.py and requirements.txt 2016-10-17 15:19:59 +01:00
Cosimo Lupo
67e75348ea Merge pull request #710 from anthrotype/wheel-license
[setup.cfg] ensure LICENSE is included in wheels
2016-10-17 10:41:41 +01:00
Cosimo Lupo
cdee7040ab [setup.cfg] ensure LICENSE is included in wheels 2016-10-17 10:31:53 +01:00
moyogo
4dd1e73b04 Revert "Merge pull request #606 from anthrotype/cff-dehint"
This reverts commit 25a03f5a5736ed70791a8dde31605ed4cee9bbd9, reversing
changes made to 8351600bc628278960390d747f45593a50b7c1ea.
2016-10-14 20:20:35 +01:00
Sascha Brawer
0588502771 Add otConverters.NameID (#708)
When writing XML, this produces a comment with the English name.
If the name ID is missing from the name table, it logs a warning.
2016-10-14 21:04:35 +02:00
Cosimo Lupo
25a03f5a57 Merge pull request #606 from anthrotype/cff-dehint
subset: must 'draw' charstrings to set 'width' attribute before calling 'drop_hints'
2016-10-14 18:43:15 +01:00
Cosimo Lupo
2300b9c168 [_h_m_t_x] use tuple() instead of list() for metrics dict values
As suggested in https://github.com/fonttools/fonttools/pull/706#commitcomment-19429339
2016-10-14 18:35:33 +01:00
Cosimo Lupo
8a0172a562 [MANIFEST.in] add testdata/*.bin
I had forgotten to add the testdata/C_F_F_.bin file to the manifest.
This means the --pyargs option from c117927 is working as expected! :)

Fixes https://ci.appveyor.com/project/fonttools/fonttools/build/1.0.81/job/ktx2c62c6yug38wk#L1089
2016-10-14 18:35:33 +01:00
Cosimo Lupo
907af836c0 [tox] add 'coverage' toxenv to make local html coverage report
This is useful if one wants to run coverage tests locally, and get a nice HTML report while one is writing tests.

Just run:

$ tox -e coverage -- {optional pytest arguments}

And you get a "htmlcov/index.html" to view in your browser.
2016-10-14 18:35:33 +01:00
Cosimo Lupo
7adfe98690 [_v_m_t_x_test] add test for vmtx table (simply inherits from hmtx one) 2016-10-14 18:35:33 +01:00
Cosimo Lupo
f6b951c6da [_h_m_t_x_test] add test module for hmtx table compiler/decompiler 2016-10-14 18:35:33 +01:00
Cosimo Lupo
115993216a [_h_m_t_x] use list() instead of tuple() in __setitem__
This is for consistency with the way the hmtx `decompile` method already worked.
2016-10-14 18:35:33 +01:00
Cosimo Lupo
2839145c05 [_h_m_t_x] log glyph names with negative advances upon compile; re-raise struct.error as TTLibError with nicer message 2016-10-14 18:35:33 +01:00
Cosimo Lupo
ca6beadd22 [_h_m_t_x] warn if hhea.numberOfHMetrics > maxp.numGlyphs
the comment said "We warn later" but that's not true.
2016-10-14 18:35:33 +01:00