221 Commits

Author SHA1 Message Date
pyup-bot
c54f5c4181 Update fonttools from 3.6.1 to 3.6.3 2017-02-06 14:35:38 +01:00
pyup.io bot
1f48bf84d1 Update fonttools from 3.6.0 to 3.6.1 (#65) 2017-01-28 21:01:08 +01:00
Behdad Esfahbod
d107ecfcca Merge pull request #64 from googlei18n/pyup-update-fonttools-3.5.0-to-3.6.0
Update fonttools to 3.6.0
2017-01-26 13:11:26 -08:00
pyup-bot
68d4446aa1 Update fonttools from 3.5.0 to 3.6.0 2017-01-26 20:04:31 +00:00
Cosimo Lupo
12b7c8faa4 Merge pull request #63 from googlei18n/pyup-initial-update
Initial Update
2017-01-14 16:30:18 +00:00
pyup-bot
6b153dab2f Update fonttools from 3.2.0 to 3.5.0 2017-01-14 16:07:51 +00:00
Cosimo Lupo
ee708d097d
Bump version: 1.1.1 -> 1.1.2.dev0 (for real!)
Sorry for all this "bumping" :)
2016-12-16 23:46:25 +00:00
Cosimo Lupo
2290612c50
manually fix up version string after my release script screwed it :( 2016-12-16 23:42:43 +00:00
Cosimo Lupo
e97e445703
Bump version: 1.1.1 → 1.1.2.dev0 2016-12-16 23:36:32 +00:00
Cosimo Lupo
757d44e007
Release 1.1.1 2016-12-16 23:36:31 +00:00
Cosimo Lupo
077f9efabe
Bump version: 1.1.0 -> 1.1.1.dev0 2016-12-16 23:16:18 +00:00
James Godfrey-Kittle
19854ad27b [minor] Use submodule name in logger 2016-11-30 17:53:37 -08:00
James Godfrey-Kittle
c36974f2cb Merge pull request #61 from googlei18n/logging
Use logger instead of printing info
2016-11-29 17:32:17 -08:00
James Godfrey-Kittle
ebebcd9f0d Use logger instead of printing info 2016-11-29 16:57:42 -08:00
Cosimo Lupo
a4e4489b2b
README.rst: add 'PyPI Version' badge 2016-11-24 07:34:44 +00:00
Cosimo Lupo
43df1e6b1b
.travis.yml: use regex to also build on tags
apparently, Travis identifies tags as 'branches', thus we need to include any branch whose name resembles a release tag (e.g. 'v1.0'), or else those builds are skipped with an error message:

> Branch "1.1.0" not included per configuration
2016-11-24 07:27:20 +00:00
Cosimo Lupo
1236d2fb78 Merge pull request #58 from anthrotype/pypi-deploy
set up PyPI deployment on tags from Travis CI
2016-11-24 06:45:19 +00:00
James Godfrey-Kittle
c66ba36b50 Merge pull request #59 from anthrotype/print-incompatible-glyphs
[ufo] print name of incompatible glyphs
2016-11-10 10:22:30 -08:00
Cosimo Lupo
6618095c36
ufo: raise custom IncompatibleGlyphsError exception with the name(s) of incompatible glyphs
Fixes https://github.com/googlei18n/cu2qu/issues/46
2016-11-04 15:30:40 +00:00
Cosimo Lupo
9b4e755219
MANIFEST.in: also include tox.ini and .coveragerc 2016-11-04 09:17:49 +00:00
Cosimo Lupo
1ee9f58608
.coveragerc: add coverage.py configuration file 2016-11-04 09:17:26 +00:00
Cosimo Lupo
d1bbdbbc90
Bump version: 1.0 -> 1.1.0 2016-11-03 19:13:47 +00:00
Cosimo Lupo
9b57baad2f
travis: set up PyPI deployment on tags; upload test coverage to Coveralls.io 2016-11-03 19:13:23 +00:00
Cosimo Lupo
a3d004dbfe
tox.ini: add Tox configuration file, with py27, py35, coverage and coveralls environments 2016-11-03 19:09:45 +00:00
Cosimo Lupo
0f59ce3730
setup.py: set fonttools & ufoLib as install_requires, add package metadata, pytest-runner and wheel support 2016-11-03 19:08:13 +00:00
Cosimo Lupo
4e4f058b12
add setup.cfg with packaging and test configuration 2016-11-03 19:03:32 +00:00
Cosimo Lupo
ccbd964e59
convert README.md to reStructuredText so it can be used for both Github and PyPI 2016-11-03 19:02:31 +00:00
Cosimo Lupo
ad90b06ec9
update .gitignore 2016-11-03 19:01:13 +00:00
Cosimo Lupo
85bbe112ce
ufo_benchmark: move defcon and robofab imports inside respective setup functions
otherwise, pytest test collection fails to import ufo_benchmark mode, as defcon/robofab are not specified as install requirements, thus may not be present when running the test suite.
2016-11-03 18:59:00 +00:00
James Godfrey-Kittle
641a4cfc42 Merge pull request #56 from anthrotype/fix-py3-random-seed
Fix tests on py2 because of differences with py3 random module
2016-11-02 11:33:10 -07:00
Cosimo Lupo
11c640bf86
MANIFEST.in, setup.py: include test data in sdist, and install with the package 2016-11-02 18:13:08 +00:00
Cosimo Lupo
61dff00a17
travis: test on both py27 and py35; drop py34 as it's redundant
install deps from requirements.txt

no need to install cu2qu to run `setup.py test`.
2016-11-02 17:56:39 +00:00
Cosimo Lupo
f178972b5b
add requirements.txt file with fonttools and ufoLib dependencies 2016-11-02 17:54:10 +00:00
Cosimo Lupo
4fb661f01a
cu2qu.test: load test package data using pkg_resources
The test suite is installed as a sub-package, so the test data must also be installed along with it.

The `__file__` attribute can be missing when importing a zipped package, so we load test files with `pkg_resources.resource_filename()`.
2016-11-02 17:51:08 +00:00
Cosimo Lupo
5e8f036edd
cu2qu_test: don't use 'random' to gen test curves for py23 compat, load from json file
`random.randint`, which is used in `cu2qu.benchmark.generate_curve` function, yields
different results when run in Python 2.7 or 3, despite using the same `random.seed(1)`.

For this reason, the `test_results_unchanged` and `test_results_unchanged_multiple` tests
in `cu2qu_test` module fail when run under Python 2.

Backward compatibility was broken with Python 3.2 `random` module, as a side effect of
fixing a non-uniformity bug. For mor info see:

https://groups.google.com/forum/#!topic/comp.lang.python/KwALjKjF6Y4
http://bugs.python.org/issue9025

To work around this, I dumped the result of generate_curve (running from Python 3.5.2 on
OSX) to a json file, and use that to run the tests.

I also stripped the white space to reduce the file size.

```python
import random
import json
from cu2qu.benchmark import generate_curve

random.seed(1)
curves = [generate_curve() for i in range(1000)]

with open("Lib/cu2qu/test/data/curves.json", "w") as fp:
    fp.write(json.dumps(curves).replace(" ", ""))
```

fixup
2016-11-02 17:51:07 +00:00
James Godfrey-Kittle
0c579c2c3f Merge pull request #54 from googlei18n/var-rename
[minor] rename variable
2016-10-20 11:36:50 -07:00
James Godfrey-Kittle
509b82204e [minor] rename variable 2016-10-20 11:25:02 -07:00
James Godfrey-Kittle
4782dd64d3 Merge pull request #50 from anthrotype/no-zip-fonts
[ufo] in fonts_to_quadratic, iterate over union of glyph names
2016-10-20 10:55:45 -07:00
James Godfrey-Kittle
92d56ae1e9 Merge pull request #53 from anthrotype/reverse-always-modifies
[ufo] when reverse_direction is True, we always want to modify the input glyphs
2016-10-15 14:20:36 -07:00
Cosimo Lupo
a876671e6f [ufo] glyphs_modified = reverse_direction 2016-10-06 16:17:26 +01:00
Cosimo Lupo
c2792f858b [ufo] when reverse_direction is True, we always want to modify the input glyphs
otherwise, the direction would only flipped if the glyph contains at least one cubic curve; whereas, we want to reverse the contour direction of all the glyphs in the font, even if they are just made of straight lines.
2016-10-06 15:14:44 +01:00
Cosimo Lupo
9c229e6509 [ufo] max_errors and glyphs list must have same length
Else curves_to_quadratic raises AssertionError if len(max_errors) != len(curves)

https://github.com/googlei18n/cu2qu/blob/master/Lib/cu2qu/__init__.py#L244
2016-09-21 00:51:06 +01:00
Cosimo Lupo
a5f93a06b9 [ufo] in fonts_to_quadratic, iterate over union of glyph names and convert compatibly glyphs with same name.
Don't use zip(*fonts) as defcon fonts are dictionary-like objects and the ordering of the glyphs returned by __iter__ method is undefined.
Should fix #48
2016-09-20 23:34:32 +01:00
James Godfrey-Kittle
d46be588f1 Merge pull request #45 from anthrotype/pass-through
[ufo] add glyph[s]_to_quadratic to convert (1+ compatible) glyphs
2016-09-19 16:47:44 +02:00
Cosimo Lupo
826b790147 [ufo] minor refactor 2016-09-19 13:10:57 +01:00
Cosimo Lupo
f2e962c78f [ufo] don't check glyph names in glyphs_to_quadratic 2016-08-12 16:00:20 +01:00
Cosimo Lupo
e7854e5039 [ufo] add glyph[s]_to_quadratic to convert (1+ compatible) glyphs
This was requested in https://github.com/googlei18n/cu2qu/issues/26

Plus:
- do not modify input glyphs unless they contain one cubic curve;
- make public functions return True/False to signal that the input
  was modified or not (eg. no curves, or all quadratic)
2016-08-12 15:30:51 +01:00
Behdad Esfahbod
ab3c0f82e6 Merge pull request #44 from googlei18n/more-optimizations
More optimizations
2016-08-01 18:11:49 -07:00
Behdad Esfahbod
c53ea86826 Use a generator for cubics[]
Not huge fan of it, but shows slight speedup, and is "Pythonic".
2016-08-01 18:10:16 -07:00
Behdad Esfahbod
9db52c9483 Avoid some more work
Saves another 7%.  Somehow I failed to push this to the last batch.
2016-08-01 14:34:41 -07:00