329 Commits

Author SHA1 Message Date
Cosimo Lupo
73d3ce4bc1
cu2qu: add language_level=3 and define_macros to enable coverage 2018-09-26 19:02:02 +01:00
Cosimo Lupo
c13ce2faee
cu2qu: return float('NaN') instead of None so return val matches signature
Otherwise I get 'TypeError: must be real number, not NoneType' when running tests with
the compiled cu2qu extension module
2018-09-26 19:02:02 +01:00
Cosimo Lupo
6719b3e1a5
update .gitignore 2018-09-26 19:00:59 +01:00
Cosimo Lupo
337c302488
cli: add missing __future__ import absolute_import 2018-09-26 19:00:59 +01:00
Cosimo Lupo
672b446c89
move cu2qu/__init__py to cu2qu/cu2qu.py so we can make an optional Extension module 2018-09-26 19:00:59 +01:00
Cosimo Lupo
d37bbef646
use setuptools_scm for getting package version from git tags 2018-09-26 18:59:03 +01:00
Cosimo Lupo
ddeece03c7
add script to download updated Cython/Shadow.py module 2018-09-26 18:59:03 +01:00
Cosimo Lupo
1d2b159911
Add copy of Cython.Shadow as cu2qu.cython 2018-09-26 18:59:03 +01:00
Behdad Esfahbod
f85240f005 [cython] Remove a couple intermediates 2018-09-26 11:08:25 -04:00
Cosimo Lupo
add13842f9
Merge pull request #152 from googlei18n/cython
Cython
2018-09-26 12:41:55 +01:00
Cosimo Lupo
db3b73713c
Merge pull request #151 from googlei18n/pyup-scheduled-update-2018-09-24
Scheduled weekly dependency update for week 38
2018-09-26 12:16:47 +01:00
Cosimo Lupo
a807ab2b93
tests: use math.isclose to compare float coordinates
using the default tolerance which is 1e-9, i.e. assures that two floats are the same
within about 9 decimal digits

https://docs.python.org/3/library/math.html#math.isclose
2018-09-26 12:13:39 +01:00
Behdad Esfahbod
36d1b69d7e [cython] More 2018-09-25 18:04:27 -04:00
Behdad Esfahbod
0c361f5cc4 [cython] Some more 2018-09-25 18:01:48 -04:00
Behdad Esfahbod
3efd0839a1 [cython] Add a few @cython.cfunc 2018-09-25 17:52:16 -04:00
Behdad Esfahbod
1f9c4a9e6b [cython] Some more annotations 2018-09-25 17:29:08 -04:00
Behdad Esfahbod
ffdeb86420 Add cython shim 2018-09-25 17:21:54 -04:00
Behdad Esfahbod
f07bf0c266 [cython] Add some cython annotations
Compare:

Python:
behdad:cu2qu 0$ python __init__.py
curve_to_quadratic:	 62.7us
curves_to_quadratic:	163.2us

Cython:
behdad:cu2qu 0$ cython --embed -a __init__.py && gcc __init__.c `python-config --cflags --libs` -O3 && ./a.out
curve_to_quadratic:	 30.4us
curves_to_quadratic:	 77.8us

Cython without this commit:
behdad:cu2qu 0$ cython --embed -a __init__.py && gcc __init__.c `python-config --cflags --libs` -O3 && ./a.out
curve_to_quadratic:	 43.9us
curves_to_quadratic:	113.3us

So, 2x speedup compared to Python. 1.5x speedup compared to Cython without annotations.

More to be done.
2018-09-25 17:18:15 -04:00
Behdad Esfahbod
ed9da8db80 Add benchmarking to __init__
I haven't removed tools/benchmark.py.  Probably should.
Also, improved the timeit parameters over benchmark.py.
2018-09-25 16:05:40 -04:00
pyup-bot
c618f2a9e7 Update defcon from 0.5.2 to 0.5.3 2018-09-24 16:10:10 +01:00
pyup-bot
58291879eb Update fonttools from 3.29.0 to 3.30.0 2018-09-24 16:10:08 +01:00
Cosimo Lupo
0130055fc7
move defcon from test-requirements.txt to requirements.txt
https://github.com/googlei18n/cu2qu/issues/148
2018-09-05 19:23:41 +01:00
Cosimo Lupo
aa4351a610
Merge pull request #147 from googlei18n/pyup-scheduled-update-2018-09-03
Scheduled weekly dependency update for week 35
2018-09-05 19:22:13 +01:00
Cosimo Lupo
7dbe476f64
pens_test.py: fix test failure with latest defcon
somehow the segmentType of the first move point of a contour is a unicode string now, and the test was comparing the repr...
2018-09-05 19:20:37 +01:00
pyup-bot
486e774a4f Update defcon from 0.3.5 to 0.5.2 2018-09-03 17:06:10 +02:00
pyup-bot
4ece836a22 Update ufolib from 2.1.1 to 2.3.1 2018-09-03 17:06:09 +02:00
pyup-bot
bd9e50ad7e Update fonttools from 3.22.0 to 3.29.0 2018-09-03 17:06:07 +02:00
Cosimo Lupo
dc44ddecbc
Add .pytest_cache/ to .gitignore 2018-06-12 11:13:45 +01:00
Cosimo Lupo
91f29893a9
setup.py: fix issue with False boolean options in bump_version command
when self.sign_tags is False, we were passing '--sign-tags False' to bumpversion script.
The boolean option with False value should be omitted instead.
2018-04-11 12:02:09 +01:00
Cosimo Lupo
81878eef6b
Bump version: 1.5.0 → 1.5.1.dev0 2018-04-11 12:01:33 +01:00
Cosimo Lupo
7e9043a61e
Release 1.5.0 2018-04-10 21:48:46 +01:00
Cosimo Lupo
5b59be68fb
Bump version: 1.4.1.dev0 → 1.5.0.dev0 2018-04-10 21:25:19 +01:00
Cosimo Lupo
bda1884b8b
cli_test: test -e and --keep-direction options 2018-04-10 21:24:39 +01:00
Cosimo Lupo
ccdf7ad140
cli: add -e/--conversion-error and --keep-direction options 2018-04-10 21:24:15 +01:00
Cosimo Lupo
b072f0ab5e
Merge pull request #126 from anthrotype/cli
skip converting twice; add 'cu2qu' console script
2018-04-10 22:06:54 +02:00
Cosimo Lupo
2e2353621e
add cli_test.py 2018-04-10 21:04:48 +01:00
Cosimo Lupo
b93782d6b0
ufo_test: add tests for 'remember_curve_type' arg 2018-04-10 21:04:35 +01:00
Cosimo Lupo
06c4d5973b
cli: minor 2018-04-10 21:04:05 +01:00
Cosimo Lupo
1d1c4d1b71
setup.py: add defcon as extra requirement used by cli script 2018-04-10 19:04:21 +01:00
Cosimo Lupo
4a8b44356d
Add __main__.py to call cli.main() as 'python -m cu2qu' 2018-04-10 19:04:21 +01:00
Cosimo Lupo
ac8fdf7dc9
add cu2qu.cli module exporting a main() function for console script
requires defcon
2018-04-10 19:04:21 +01:00
Cosimo Lupo
0a2593b2c5
[cu2qu.ufo] remember the curve type in lib to skip converting twice 2018-04-10 18:22:32 +01:00
pyup-bot
f90be7a7dd Update fonttools from 3.21.2 to 3.22.0 2018-02-12 20:24:56 +01:00
pyup-bot
5ce7c2eb47 Update fonttools from 3.18.0 to 3.21.2 2018-01-22 18:46:50 +00:00
Cosimo Lupo
7064562174
Bump version: 1.4.0 → 1.4.1.dev0 2018-01-18 17:07:01 +00:00
Cosimo Lupo
dba25f6059
Release 1.4.0 2018-01-18 17:05:31 +00:00
Cosimo Lupo
ae64a8a512
setup.py: add -s/--sign option to 'release' command
requires bump2version >= 0.5.7
2018-01-18 16:58:58 +00:00
Cosimo Lupo
ed9080df79
Bump version: 1.3.1.dev0 → 1.4.0.dev0 2018-01-18 16:55:50 +00:00
Cosimo Lupo
e07d582755
minor: prettify indentation of incompatible segments message 2018-01-18 16:53:47 +00:00
Cosimo Lupo
0b41ba3521
_set_segments must now handle 'curveTo' segments as well
since we let them pass now, and we only stop at the end
2018-01-18 14:33:49 +00:00