329 Commits

Author SHA1 Message Date
Cosimo Lupo
af4d7abb63
Merge pull request #115 from anthrotype/error-handling
Error handling
2018-01-18 15:01:32 +01:00
Cosimo Lupo
b627a778bf
Don't stop at first incompatibilty, log errors, raise at the end
Based on Miguel Sousa's original PR and the following discussion:
https://github.com/googlei18n/cu2qu/pull/114

Instead of raising an error at the first incompatible glyph, we
let it continue (keeping the original contours unmodified when
that happens), and use logging to print error messages.

A new `IncompatibleFontsError` exception is raised at the end of
`fonts_to_quadratic` if any glyph has incompatible number or types
of segments. The exception instance has a `glyph_errors` attribute
(dict) which collects all the individual IncompatibleGlyphsError
keyed by glyph name.
2018-01-18 13:21:08 +00:00
Cosimo Lupo
fbb41aeb1b Bump version: 1.3.0 → 1.3.1.dev0 2017-10-31 19:57:57 +00:00
Cosimo Lupo
932d030d6f Release 1.3.0 2017-10-31 19:57:00 +00:00
Cosimo Lupo
824a9d22bc Bump version: 1.2.1.dev0 → 1.3.0.dev0 2017-10-31 19:43:56 +00:00
Cosimo Lupo
8740ce1aa3 MANIFEST.in: add test-requirements.txt to sdist 2017-10-31 19:37:31 +00:00
Cosimo Lupo
84ae0e7ca2
Merge pull request #102 from anthrotype/ufo-test
add tests for cu2qu.ufo
2017-10-31 19:34:58 +00:00
Cosimo Lupo
0d00796e01 ufo_test: add tests for ufo.py module
100 % coverage.. yay! :)
2017-10-31 19:20:24 +00:00
Cosimo Lupo
718228cb32 ufo: minor
No need to be verbose here. Message is never read anyway.
2017-10-31 19:10:35 +00:00
Cosimo Lupo
1cadd9c47f Add defcon to test-requirements.txt
I need some font objects to exercise the fonts_to_quadratic function.
Defcon is still not an install requirement though, as cu2qu should
work with any defcon-like objects (e.g. fontParts?, robofab not so much)
2017-10-31 18:39:17 +00:00
Cosimo Lupo
e648ef3f89 ufo: must scale max_err_em list by UPEM
When the 'max_err_em' argument is a float, we multiply it
by the font.info.unitsPerEm. However we were not doing it when
the argument is a list of floats...
2017-10-31 18:23:21 +00:00
Cosimo Lupo
fabada54b1 ufo: minor
_segments_to_quadratic is private, and always gets not-None 'stats' argument.
This if-branch is always true. Removed.
2017-10-31 18:22:56 +00:00
Cosimo Lupo
09c5856428 ufo: don't drop single points in GetSegmentsPen
We dropped robofab support. There is no reason to arbitrarily
drop any contour points. Anchors are handled as anchors in
latest ufoLib+defcon, also for UFO2. No more need to special-case.
2017-10-31 18:21:20 +00:00
Cosimo Lupo
3125f071c7 pens_test: capture deprecation warning 2017-10-31 18:18:59 +00:00
Cosimo Lupo
6c22995a5f pens: deprecate 'ignore_single_points' argument
This was needed for when we were supporting the old robofab.ufoLib
where anchors were represented as single-point-with-a-name contours.
With latest ufoLib, even when glif format is 1, anchors are
stored separately and are not drawn with pens (only proper contours
and components are passed on in the draw method).
So there is no longer need to special-case single points.
It's not the job of the cu2qu pens to filter those out.
2017-10-31 17:57:53 +00:00
Cosimo Lupo
4bc88340b9 setup.cfg: set 3.0 as pytest 'minversion' 2017-10-31 17:39:23 +00:00
Cosimo Lupo
a414079f1a tests/data: add RobotoSubset-Bold.ufo
Will be used for testing fonts_to_quadratic
2017-10-31 14:11:49 +00:00
Cosimo Lupo
8e3df9a952 Remove unsupported robofab benchmark
It won't work with our UFO3, sorry...
2017-10-31 14:10:40 +00:00
Cosimo Lupo
82084874c5 Upgrade RobotoSubset-Regular.ufo to UFO 3 2017-10-31 14:10:40 +00:00
Cosimo Lupo
192c6fc0f3 MANIFEST.in: add tests/ folder to sdist 2017-10-31 13:02:15 +00:00
Cosimo Lupo
9be3901795 move Lib/cu2qu/test to tests/ folder
There is no need to install the test suite with the package.
Let's put it outside like it's recommended by pytest.
2017-10-31 12:58:09 +00:00
Cosimo Lupo
af0a06081a remove robofab imports
fonts_to_quadratic may still work with Robofab fonts, it's just
that the point pens will be imported from standalone ufoLib
2017-10-31 12:35:26 +00:00
Cosimo Lupo
4d07b533fc Move benchmark.py and ufo_benchmark.py to tools/
These modules are only useful for development, should not be installed
with the library
2017-10-31 12:35:26 +00:00
Cosimo Lupo
c754d1eea4 Add .codecov.yml to mute notifications 2017-10-31 11:23:45 +00:00
Cosimo Lupo
1f834774de README.rst: add codecov.io badge 2017-10-30 19:21:14 +00:00
Cosimo Lupo
4e7a9989d4 Combine py{2,3} coverage; upload report to codecov.io
https://codecov.io/gh/googlei18n/cu2qu

Also, run tests on python3.6 instead of 3.5.
2017-10-30 19:16:58 +00:00
Cosimo Lupo
e1d072582a
Merge pull request #101 from anthrotype/reverse-pen
use ReverseContourPen from fonttools
2017-10-30 19:02:04 +00:00
Cosimo Lupo
df10cdea05 Use fonttools' ReverseContourPen
Fixes #51
2017-10-30 18:56:02 +00:00
Cosimo Lupo
7c0ed18c6a Bump minimum required fonttools to 3.18.0
we need that for the bugfix in ReverseContourPen
https://github.com/googlei18n/cu2qu/issues/51

also bump ufoLib to >= 2.1.1, just because.
2017-10-30 18:54:00 +00:00
Cosimo Lupo
fef29c4f97
Merge pull request #100 from googlei18n/pyup-scheduled-update-10-30-2017
Scheduled weekly dependency update for week 44
2017-10-30 18:45:05 +00:00
pyup-bot
e2acefa4be Update ufolib from 2.1.0 to 2.1.1 2017-10-30 13:47:09 +00:00
pyup-bot
f297ebb3d9 Update fonttools from 3.13.1 to 3.17.0 2017-10-30 13:47:07 +00:00
Cosimo Lupo
e7a3c9282d Merge pull request #99 from anthrotype/fix-pens-stats
[pens] fix number of segments reported in stats
2017-10-25 19:07:34 +01:00
Cosimo Lupo
c21ee24eec [pens_test] fix test_stats test
This test would have failed with the incorrect count.
2017-10-25 19:05:40 +01:00
Cosimo Lupo
13abea3ca5 [pens] fix number of segments reported in stats
It appears we were reporting the 'stats' differently in the pens and
in the main ufo module.

https://github.com/googlei18n/cu2qu/blob/7a2f638/Lib/cu2qu/ufo.py#L148

You can git blame me, sorry.
Funny how it's been broken for almost two years :)
2017-10-25 18:49:19 +01:00
Behdad Esfahbod
7a2f6383e4 Simplify log message 2017-07-28 16:41:52 +01:00
Cosimo Lupo
83e844e4cd Merge pull request #87 from googlei18n/pyup-scheduled-update-07-10-2017
Scheduled weekly dependency update for week 28
2017-07-10 14:25:23 +01:00
pyup-bot
cee9ee33f4 Update fonttools from 3.13.0 to 3.13.1 2017-07-10 14:20:05 +01:00
Cosimo Lupo
a9f5d463ae
Bump version: 1.2.0 → 1.2.1.dev0 2017-05-24 19:16:46 +01:00
Cosimo Lupo
611512bd60
Release 1.2.0 2017-05-24 19:16:16 +01:00
Cosimo Lupo
815afa1a5a
Bump version: 1.1.2.dev0 → 1.2.0.dev0 2017-05-24 19:14:23 +01:00
Cosimo Lupo
6972d13bc4
Add bump_version and release commands to setup.py 2017-05-24 19:14:12 +01:00
Cosimo Lupo
5e24ff4e5e Merge pull request #81 from anthrotype/reverse-pen
remove copy of ReverseContourPointPen, import it from ufoLib v2.1.0
2017-05-24 19:07:48 +01:00
Cosimo Lupo
153404077d
[pens] remove ReverseContourPointPen copy; import it from ufoLib (v2.1.0)
... or from robofab (I haven't tested the latter though)
2017-05-24 19:05:14 +01:00
Cosimo Lupo
27842267cd
Update fonttools from 3.10.0 to 3.13.0 2017-05-24 18:46:35 +01:00
Cosimo Lupo
638d503615
Update ufoLib from 2.0.0 to 2.1.0
this includes defcon's ReverseContourPointPen

https://github.com/unified-font-object/ufoLib/releases/tag/v2.1.0
2017-05-24 18:46:00 +01:00
Cosimo Lupo
6fa218266c Merge pull request #80 from moyogo/approxerror
Change the default approximation error from 0.0025 to 0.001
2017-05-24 10:43:06 +01:00
Denis Moyogo Jacquerye
b1626bd0e8 Change the default approximation error from 0.0025 to 0.001 2017-05-23 16:09:48 +01:00
pyup-bot
b72a599637 Update fonttools from 3.9.2 to 3.10.0 2017-04-17 22:58:29 +08:00
pyup-bot
762496f9c8 Update fonttools from 3.9.1 to 3.9.2 2017-04-11 17:18:31 +08:00