Cosimo Lupo
c40bfd3a0d
setup.cfg: ignore deprecation warnings that we ourselves raise in tests
2018-10-09 13:31:56 +01:00
Cosimo Lupo
fa68a5dc94
MANIFEST.in: add tests modules and data files to sdist
2018-10-09 13:18:43 +01:00
Cosimo Lupo
66ce3d50b5
move test suite outside of Lib/ufoLib
...
Fixes https://github.com/unified-font-object/ufoLib/issues/165
2018-10-09 13:15:54 +01:00
Cosimo Lupo
5131c1a0e6
Bump version: 2.3.2 → 2.4.0.dev0
2018-10-09 12:40:08 +01:00
Cosimo Lupo
ad5471c517
pyproject.toml: cython is only optional build requirement
2018-10-09 11:53:18 +01:00
Cosimo Lupo
4adb33a809
add PEP517/518 pyproject.toml
2018-10-09 11:46:58 +01:00
Cosimo Lupo
4247b30dde
revert to using division instead of multiplication, fixes 1-unit diffs after v1.6
...
Fixes #155
2018-10-09 11:32:53 +01:00
Cosimo Lupo
56b4505913
various cleanups: use pyfilesystem2 API directly, remove ufoLib.filesystem
...
Among other things, this allows clients to inject an already
instantiated FS object in both the UFOReader/UFOWriter 'path'
argument.
2018-10-08 18:06:07 +01:00
Behdad Esfahbod
6be1737965
[cython] Minor add inline
2018-10-06 21:07:13 +02:00
Cosimo Lupo
52ec18be96
Merge remote-tracking branch 'origin/master' into ufoz-rebased
2018-10-03 15:52:45 +01:00
Cosimo Lupo
7426785166
tox.ini: update fs to 2.1.1
2018-10-03 13:04:49 +01:00
Cosimo Lupo
1692d237e7
Release 2.3.2
2018-10-02 13:53:16 +01:00
Cosimo Lupo
bfc95edf43
travis: update encrypted PyPI credentials; use twine directly to upload
2018-10-02 13:50:56 +01:00
Cosimo Lupo
b19e868cd6
test note with non-ASCII characters
2018-10-02 13:31:11 +01:00
Cosimo Lupo
e658d674e0
glifLib: Element.text must be unicode, not UTF-8 bytes
...
Fixes https://github.com/googlei18n/fontmake/issues/467
2018-10-02 13:24:12 +01:00
Ben Kiel
b1ec81ab56
Merge pull request #171 from unified-font-object/pyup-scheduled-update-2018-09-24
...
Scheduled weekly dependency update for week 38
2018-10-01 11:26:48 -05:00
Mickaël Schoentgen
52e855e4a4
Use the 'with' context manager when dealing with files
2018-10-01 08:42:45 +02:00
Cosimo Lupo
0245f2c55a
loggingTools: add msg=None argument to CapturingLogHandler.assertRegex
...
like all the rest of unittest.TestCase assertSomething
2018-09-28 19:10:50 +01:00
Behdad Esfahbod
d258333007
[iup] Fix comment
2018-09-27 17:41:09 -04:00
Cosimo Lupo
bc288169a2
typo
2018-09-26 21:27:55 +01:00
Cosimo Lupo
67d1a1d884
README.rst: add installation instructions for cython module
2018-09-26 21:25:49 +01:00
Cosimo Lupo
8baa24fee4
tox: only build sdist for upload on PyPI
2018-09-26 21:25:46 +01:00
Cosimo Lupo
4ee6f7c15a
Merge pull request #153 from googlei18n/cython-setup
...
set up optional cython extension module
2018-09-26 20:22:12 +01:00
Cosimo Lupo
06a981383b
travis: update pypi password, use twine (via tox) to upload to PyPI
2018-09-26 20:19:20 +01:00
Cosimo Lupo
b2410d9fe0
tox: add envs to build sdist, pure/native wheels, and upload to pypi
2018-09-26 20:18:21 +01:00
Rob McKaughan
7d59b729ab
Include nameIDs referenced by STAT table
2018-09-26 14:50:22 -04:00
Cosimo Lupo
c0a9b3689c
travis: run tests both with and without cython
2018-09-26 19:10:18 +01:00
Cosimo Lupo
040c8536e2
tox: run tests with and without cython
2018-09-26 19:06:21 +01:00
Cosimo Lupo
d23308884b
.coveragerc: exclude vendored cython.py
2018-09-26 19:06:21 +01:00
Cosimo Lupo
31ad0eb841
setup.py: make building of extension module optional
...
One can now use either the $CU2QU_WITH_CYTHON environment variable
or the --with/without-cython command line options to setup.py.
The --without-cython is for when one wants to get a pure, universal
wheel despite having both cython and a C compiler installed.
By default (when no env var nor command line options are used),
building from source will attempt to compile the extension module
using the pre-generated *.c source files that are always included
in the sdist package that we (will) upload to PyPI.
If the compilation fails (e.g. the user doesn't have a C compiler),
then an error message will be printed but installation will proceed
without the optional native extension.
When cloning a fresh repo, the *.c sources will not be present, so
to build the extension from local checkout one always needs Cython
installed.
When $CU2QU_WITH_CYTHON is true (1, or yes), then cython is required
and installation will abort if any error occurs during building.
2018-09-26 19:06:20 +01:00
Cosimo Lupo
0f80ff7b2c
cu2qu: add a COMPILED flag to check if cu2qu is running in compiled/interpreted mode
2018-09-26 19:02:02 +01:00
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
Mickaël Schoentgen
bfde7268c3
Fix ResourceWarning: unclosed file in MetaTools
2018-09-25 23:18:21 +02: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