10345 Commits

Author SHA1 Message Date
Cosimo Lupo
81e0855cc7
must decode incoming user paths on py2, pyfilesystem2 requires unicode paths
with this the defcon test suite passes on both py2 and py3. I think i'm done for now.
2018-10-09 18:20:10 +01:00
Khaled Hosny
24226fd592 Put back __future__ import 2018-10-09 18:43:34 +02:00
Cosimo Lupo
37e3f3bcb3
Add tests/test_UFOZ.py
we'll add more tests later
2018-10-09 17:32:15 +01:00
Cosimo Lupo
57bc0264f5
don't attempt to remove empty optional files if writing new UFO from scratch
and don't strip trailing '/', keep input path as is. It should not be
used by anybody, anyway.
2018-10-09 17:17:40 +01:00
Khaled Hosny
e1047a3177 Sort imports
Also remove unused __future__ imports.
2018-10-09 17:25:40 +02:00
Khaled Hosny
13de4f30c2 [Snippets] Improve otf2ttf.py post table message 2018-10-09 17:25:40 +02:00
Khaled Hosny
5ad27dfb40 [Snippets] Handle post table overflow in otf2ttf.py
Fixes https://github.com/fonttools/fonttools/issues/1329
2018-10-09 17:25:40 +02:00
Khaled Hosny
c9f79af8ce [Snippets] Allow otf2ttf.py to take in TTC fonts
Processes individual faces only, though. No support for writing out font
collections.
2018-10-09 17:25:40 +02:00
Cosimo Lupo
3bb859fe90
tests: add *.ufoz test file
Compressed using `zip` utility

$ cd tests/testdata
$ zip -9 -r "TestFont1 (UFO3).ufoz" "TestFont1 (UFO3).ufo"
2018-10-09 15:47:46 +01:00
Cosimo Lupo
7321c2d91f
tests: add UFO3 test font 2018-10-09 15:42:58 +01:00
Cosimo Lupo
032aa7b6ac
minor: diff noise, docstrings, etc. [skip ci] 2018-10-09 15:18:33 +01:00
Behdad Esfahbod
a340ea1fb3 Revert cdivision
Bot not happy.  Not happy bot not good.

This reverts commit 7e130ea438875b3a32564fe02adfd60286b3eed0.
This reverts commit 3486a3635f35044fe94d722cee788ba5d3a5698a.
2018-10-09 09:57:15 -04:00
Behdad Esfahbod
7e130ea438 [cython] Revert one of the cdivisions
Seeing if makes bot happy.
2018-10-09 09:46:30 -04:00
Behdad Esfahbod
3486a3635f [cython] Sprinkle some cdivision
https://github.com/googlei18n/cu2qu/issues/155#issuecomment-427986961

The primary purpose is to disable div-by-zero check since we know it
can't happen in those functions.
2018-10-09 09:40:35 -04:00
Cosimo Lupo
7ef045c88f
minor [skip ci] 2018-10-09 14:20:52 +01:00
Cosimo Lupo
6ec8b72b6a
remove _common module, put shared methods in ufoLib.__init__
and moved the import ufoLib.glifLib outside from global module scope to
avoid circular import issues
2018-10-09 14:13:28 +01:00
Cosimo Lupo
20c3c1b227
move datetimeAsTimestamp func to utils.py module 2018-10-09 14:03:49 +01:00
Cosimo Lupo
3de05dde2f
remove runTests helper, just use pytest as runner from now on 2018-10-09 13:44:34 +01:00
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