diff --git a/bin/python3.7 b/bin/python3.7 index 464bfa7..c50d7c7 100755 Binary files a/bin/python3.7 and b/bin/python3.7 differ diff --git a/bin/python3.7m b/bin/python3.7m deleted file mode 100755 index 464bfa7..0000000 Binary files a/bin/python3.7m and /dev/null differ diff --git a/bin/python3.7m-config b/bin/python3.7m-config deleted file mode 100755 index 9458b2b..0000000 --- a/bin/python3.7m-config +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env python3.7m -# -*- python -*- - -# Keep this script in sync with python-config.sh.in - -import getopt -import os -import sys -import sysconfig - -valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', - 'ldflags', 'extension-suffix', 'help', 'abiflags', 'configdir'] - -def exit_with_usage(code=1): - print("Usage: {0} [{1}]".format( - sys.argv[0], '|'.join('--'+opt for opt in valid_opts)), file=sys.stderr) - sys.exit(code) - -try: - opts, args = getopt.getopt(sys.argv[1:], '', valid_opts) -except getopt.error: - exit_with_usage() - -if not opts: - exit_with_usage() - -pyver = sysconfig.get_config_var('VERSION') -getvar = sysconfig.get_config_var - -opt_flags = [flag for (flag, val) in opts] - -if '--help' in opt_flags: - exit_with_usage(code=0) - -for opt in opt_flags: - if opt == '--prefix': - print(sysconfig.get_config_var('prefix')) - - elif opt == '--exec-prefix': - print(sysconfig.get_config_var('exec_prefix')) - - elif opt in ('--includes', '--cflags'): - flags = ['-I' + sysconfig.get_path('include'), - '-I' + sysconfig.get_path('platinclude')] - if opt == '--cflags': - flags.extend(getvar('CFLAGS').split()) - print(' '.join(flags)) - - elif opt in ('--libs', '--ldflags'): - libs = ['-lpython' + pyver + sys.abiflags] - libs += getvar('LIBS').split() - libs += getvar('SYSLIBS').split() - # add the prefix/lib/pythonX.Y/config dir, but only if there is no - # shared library in prefix/lib/. - if opt == '--ldflags': - if not getvar('Py_ENABLE_SHARED'): - libs.insert(0, '-L' + getvar('LIBPL')) - if not getvar('PYTHONFRAMEWORK'): - libs.extend(getvar('LINKFORSHARED').split()) - print(' '.join(libs)) - - elif opt == '--extension-suffix': - print(sysconfig.get_config_var('EXT_SUFFIX')) - - elif opt == '--abiflags': - print(sys.abiflags) - - elif opt == '--configdir': - print(sysconfig.get_config_var('LIBPL')) diff --git a/include/python3.7m/pyconfig.h b/include/python3.7m/pyconfig.h index a835861..f1f7be8 100644 --- a/include/python3.7m/pyconfig.h +++ b/include/python3.7m/pyconfig.h @@ -121,13 +121,13 @@ #define HAVE_CLOCK 1 /* Define to 1 if you have the `clock_getres' function. */ -#define HAVE_CLOCK_GETRES 1 +/* #undef HAVE_CLOCK_GETRES */ /* Define to 1 if you have the `clock_gettime' function. */ -#define HAVE_CLOCK_GETTIME 1 +/* #undef HAVE_CLOCK_GETTIME */ /* Define to 1 if you have the `clock_settime' function. */ -#define HAVE_CLOCK_SETTIME 1 +/* #undef HAVE_CLOCK_SETTIME */ /* Define if the C compiler supports computed gotos. */ #define HAVE_COMPUTED_GOTOS 1 @@ -368,7 +368,7 @@ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ -#define HAVE_FUTIMENS 1 +/* #undef HAVE_FUTIMENS */ /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 @@ -402,7 +402,7 @@ #define HAVE_GETC_UNLOCKED 1 /* Define to 1 if you have the `getentropy' function. */ -#define HAVE_GETENTROPY 1 +/* #undef HAVE_GETENTROPY */ /* Define to 1 if you have the `getgrouplist' function. */ #define HAVE_GETGROUPLIST 1 @@ -1202,7 +1202,7 @@ #define HAVE_UTIL_H 1 /* Define to 1 if you have the `utimensat' function. */ -#define HAVE_UTIMENSAT 1 +/* #undef HAVE_UTIMENSAT */ /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 diff --git a/lib/libcrypto.1.0.0.dylib b/lib/libcrypto.1.0.0.dylib index e9adcb3..cae0057 100644 Binary files a/lib/libcrypto.1.0.0.dylib and b/lib/libcrypto.1.0.0.dylib differ diff --git a/lib/libexslt.0.dylib b/lib/libexslt.0.dylib index e2751d2..feb37a8 100644 Binary files a/lib/libexslt.0.dylib and b/lib/libexslt.0.dylib differ diff --git a/lib/liblzma.5.dylib b/lib/liblzma.5.dylib index 8e09f5f..6ace6b8 100644 Binary files a/lib/liblzma.5.dylib and b/lib/liblzma.5.dylib differ diff --git a/lib/libreadline.6.3.dylib b/lib/libreadline.6.3.dylib deleted file mode 100644 index ea795de..0000000 Binary files a/lib/libreadline.6.3.dylib and /dev/null differ diff --git a/lib/libreadline.6.dylib b/lib/libreadline.6.dylib deleted file mode 120000 index da772ad..0000000 --- a/lib/libreadline.6.dylib +++ /dev/null @@ -1 +0,0 @@ -libreadline.6.3.dylib \ No newline at end of file diff --git a/lib/libreadline.7.0.dylib b/lib/libreadline.7.0.dylib index 8d34128..7a5ed67 100644 Binary files a/lib/libreadline.7.0.dylib and b/lib/libreadline.7.0.dylib differ diff --git a/lib/libsqlite3.0.dylib b/lib/libsqlite3.0.dylib index 5a71b7d..f1e3c48 100644 Binary files a/lib/libsqlite3.0.dylib and b/lib/libsqlite3.0.dylib differ diff --git a/lib/libsqlite3.dylib b/lib/libsqlite3.dylib deleted file mode 120000 index 3a850bc..0000000 --- a/lib/libsqlite3.dylib +++ /dev/null @@ -1 +0,0 @@ -libsqlite3.0.dylib \ No newline at end of file diff --git a/lib/libssl.1.0.0.dylib b/lib/libssl.1.0.0.dylib index e3d5398..888b3b5 100644 Binary files a/lib/libssl.1.0.0.dylib and b/lib/libssl.1.0.0.dylib differ diff --git a/lib/libxml2.2.dylib b/lib/libxml2.2.dylib index c650ac1..02cb1f8 100644 Binary files a/lib/libxml2.2.dylib and b/lib/libxml2.2.dylib differ diff --git a/lib/libxslt.1.dylib b/lib/libxslt.1.dylib index c2de73f..91ceecd 100644 Binary files a/lib/libxslt.1.dylib and b/lib/libxslt.1.dylib differ diff --git a/lib/libz.1.2.11.dylib b/lib/libz.1.2.11.dylib new file mode 100644 index 0000000..5e0a152 Binary files /dev/null and b/lib/libz.1.2.11.dylib differ diff --git a/lib/libz.1.dylib b/lib/libz.1.dylib new file mode 120000 index 0000000..5c120fd --- /dev/null +++ b/lib/libz.1.dylib @@ -0,0 +1 @@ +libz.1.2.11.dylib \ No newline at end of file diff --git a/lib/pkgconfig/python-3.7.pc b/lib/pkgconfig/python-3.7.pc index 69ea772..fd53228 100644 --- a/lib/pkgconfig/python-3.7.pc +++ b/lib/pkgconfig/python-3.7.pc @@ -1,5 +1,5 @@ # See: man pkg-config -prefix=/oml/openmedialibrary_platform_darwin/dist +prefix=/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64 exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include diff --git a/lib/python3.7/_sysconfigdata_m_darwin_darwin.py b/lib/python3.7/_sysconfigdata_m_darwin_darwin.py index 735e58e..d475c9e 100644 --- a/lib/python3.7/_sysconfigdata_m_darwin_darwin.py +++ b/lib/python3.7/_sysconfigdata_m_darwin_darwin.py @@ -8,23 +8,18 @@ build_time_vars = {'ABIFLAGS': 'm', 'BASECFLAGS': '-Wno-unused-result -Wsign-compare -Wunreachable-code', 'BASECPPFLAGS': '', 'BASEMODLIBS': '', - 'BINDIR': '/oml/openmedialibrary_platform_darwin/dist/bin', - 'BINLIBDEST': '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7', + 'BINDIR': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/bin', + 'BINLIBDEST': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7', 'BLDLIBRARY': 'libpython3.7m.a', 'BLDSHARED': 'gcc -bundle -undefined dynamic_lookup ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib', + '-L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib ' + '-L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib ' + '-L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl/lib ' + '-L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib ' + '-L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib', 'BUILDEXE': '.exe', 'BUILDPYTHON': 'python.exe', - 'BUILD_GNU_TYPE': 'x86_64-apple-darwin18.2.0', + 'BUILD_GNU_TYPE': 'x86_64-apple-darwin15.6.0', 'BYTESTR_DEPS': '\\', 'CC': 'gcc', 'CCSHARED': '', @@ -41,61 +36,51 @@ build_time_vars = {'ABIFLAGS': 'm', '-Wno-missing-field-initializers ' '-Wstrict-prototypes ' '-Werror=implicit-function-declaration', - 'CONFIGURE_CPPFLAGS': '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include', - 'CONFIGURE_LDFLAGS': '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib', + 'CONFIGURE_CPPFLAGS': '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include', + 'CONFIGURE_LDFLAGS': '-L/usr/local/opt/openssl/lib ' + '-L/usr/local/opt/sqlite/lib ' + '-L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib ' + '-L/usr/local/opt/zlib/lib', 'CONFIGURE_LDFLAGS_NODIST': '', - 'CONFIG_ARGS': "'MACOSX_DEPLOYMENT_TARGET=10.8' " - "'--with-openssl=/oml/openmedialibrary_platform_darwin/brew/opt/openssl' " - "'--prefix=/oml/openmedialibrary_platform_darwin/dist' " - "'LDFLAGS= " - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - "-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib' " - "'CPPFLAGS=-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl " - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - "-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include'", - 'CONFINCLUDEDIR': '/oml/openmedialibrary_platform_darwin/dist/include', - 'CONFINCLUDEPY': '/oml/openmedialibrary_platform_darwin/dist/include/python3.7m', + 'CONFIG_ARGS': "'MACOSX_DEPLOYMENT_TARGET=10.11' " + "'--with-openssl=/usr/local/opt/openssl' " + "'--prefix=/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64' " + "'LDFLAGS= -L/usr/local/opt/openssl/lib " + '-L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib ' + "-L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib' " + "'CPPFLAGS=-I/usr/local/opt/openssl/include/openssl " + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include -I/usr/local/opt/xz/include ' + "-I/usr/local/opt/zlib/include'", + 'CONFINCLUDEDIR': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include', + 'CONFINCLUDEPY': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include/python3.7m', 'COREPYTHONPATH': '', - 'COVERAGE_INFO': '/oml/openmedialibrary_platform_darwin/Python-3.7.2/coverage.info', - 'COVERAGE_REPORT': '/oml/openmedialibrary_platform_darwin/Python-3.7.2/lcov-report', + 'COVERAGE_INFO': '/Users/travis/build/2620/openmedialibrary_darwin_build/Python-3.7.2/coverage.info', + 'COVERAGE_REPORT': '/Users/travis/build/2620/openmedialibrary_darwin_build/Python-3.7.2/lcov-report', 'COVERAGE_REPORT_OPTIONS': '--no-branch-coverage --title "CPython lcov ' 'report"', - 'CPPFLAGS': '-I. -I./Include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include', + 'CPPFLAGS': '-I. -I./Include -I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include -I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include -I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include', 'CXX': 'g++', - 'DESTDIRS': '/oml/openmedialibrary_platform_darwin/dist ' - '/oml/openmedialibrary_platform_darwin/dist/lib ' - '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7 ' - '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7/lib-dynload', - 'DESTLIB': '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7', + 'DESTDIRS': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64 ' + '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib ' + '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7 ' + '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7/lib-dynload', + 'DESTLIB': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7', 'DESTPATH': '', - 'DESTSHARED': '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7/lib-dynload', + 'DESTSHARED': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7/lib-dynload', 'DFLAGS': '', 'DIRMODE': 755, 'DIST': 'README.rst ChangeLog configure configure.ac acconfig.h pyconfig.h.in ' @@ -154,9 +139,9 @@ build_time_vars = {'ABIFLAGS': 'm', 'HAVE_CHOWN': 1, 'HAVE_CHROOT': 1, 'HAVE_CLOCK': 1, - 'HAVE_CLOCK_GETRES': 1, - 'HAVE_CLOCK_GETTIME': 1, - 'HAVE_CLOCK_SETTIME': 1, + 'HAVE_CLOCK_GETRES': 0, + 'HAVE_CLOCK_GETTIME': 0, + 'HAVE_CLOCK_SETTIME': 0, 'HAVE_COMPUTED_GOTOS': 1, 'HAVE_CONFSTR': 1, 'HAVE_CONIO_H': 0, @@ -232,7 +217,7 @@ build_time_vars = {'ABIFLAGS': 'm', 'HAVE_FTELLO': 1, 'HAVE_FTIME': 1, 'HAVE_FTRUNCATE': 1, - 'HAVE_FUTIMENS': 1, + 'HAVE_FUTIMENS': 0, 'HAVE_FUTIMES': 1, 'HAVE_FUTIMESAT': 0, 'HAVE_GAI_STRERROR': 1, @@ -243,7 +228,7 @@ build_time_vars = {'ABIFLAGS': 'm', 'HAVE_GCC_UINT128_T': 1, 'HAVE_GETADDRINFO': 1, 'HAVE_GETC_UNLOCKED': 1, - 'HAVE_GETENTROPY': 1, + 'HAVE_GETENTROPY': 0, 'HAVE_GETGROUPLIST': 1, 'HAVE_GETGROUPS': 1, 'HAVE_GETHOSTBYNAME': 1, @@ -506,7 +491,7 @@ build_time_vars = {'ABIFLAGS': 'm', 'HAVE_UNSETENV': 1, 'HAVE_USABLE_WCHAR_T': 0, 'HAVE_UTIL_H': 1, - 'HAVE_UTIMENSAT': 1, + 'HAVE_UTIMENSAT': 0, 'HAVE_UTIMES': 1, 'HAVE_UTIME_H': 1, 'HAVE_UUID_CREATE': 0, @@ -528,57 +513,47 @@ build_time_vars = {'ABIFLAGS': 'm', 'HAVE_X509_VERIFY_PARAM_SET1_HOST': 1, 'HAVE_ZLIB_COPY': 1, 'HAVE__GETPTY': 0, - 'HOST_GNU_TYPE': 'x86_64-apple-darwin18.2.0', - 'INCLDIRSTOMAKE': '/oml/openmedialibrary_platform_darwin/dist/include ' - '/oml/openmedialibrary_platform_darwin/dist/include ' - '/oml/openmedialibrary_platform_darwin/dist/include/python3.7m ' - '/oml/openmedialibrary_platform_darwin/dist/include/python3.7m', - 'INCLUDEDIR': '/oml/openmedialibrary_platform_darwin/dist/include', - 'INCLUDEPY': '/oml/openmedialibrary_platform_darwin/dist/include/python3.7m', - 'INSTALL': '/usr/bin/install -c', - 'INSTALL_DATA': '/usr/bin/install -c -m 644', - 'INSTALL_PROGRAM': '/usr/bin/install -c', - 'INSTALL_SCRIPT': '/usr/bin/install -c', - 'INSTALL_SHARED': '/usr/bin/install -c -m 555', + 'HOST_GNU_TYPE': 'x86_64-apple-darwin15.6.0', + 'INCLDIRSTOMAKE': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include ' + '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include ' + '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include/python3.7m ' + '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include/python3.7m', + 'INCLUDEDIR': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include', + 'INCLUDEPY': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/include/python3.7m', + 'INSTALL': '/usr/local/bin/ginstall -c', + 'INSTALL_DATA': '/usr/local/bin/ginstall -c -m 644', + 'INSTALL_PROGRAM': '/usr/local/bin/ginstall -c', + 'INSTALL_SCRIPT': '/usr/local/bin/ginstall -c', + 'INSTALL_SHARED': '/usr/local/bin/ginstall -c -m 555', 'INSTSONAME': 'libpython3.7m.a', 'IO_H': 'Modules/_io/_iomodule.h', 'IO_OBJS': '\\', 'LDCXXSHARED': 'g++ -bundle -undefined dynamic_lookup', - 'LDFLAGS': '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib', + 'LDFLAGS': '-L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib ' + '-L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib ' + '-L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl/lib ' + '-L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib ' + '-L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib', 'LDFLAGS_NODIST': '', 'LDLAST': '', 'LDLIBRARY': 'libpython3.7m.a', 'LDLIBRARYDIR': '', 'LDSHARED': 'gcc -bundle -undefined dynamic_lookup ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib', + '-L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib ' + '-L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib ' + '-L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl/lib ' + '-L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib ' + '-L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib', 'LDVERSION': '3.7m', 'LIBC': '', - 'LIBDEST': '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7', - 'LIBDIR': '/oml/openmedialibrary_platform_darwin/dist/lib', + 'LIBDEST': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7', + 'LIBDIR': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib', 'LIBFFI_INCLUDEDIR': '', 'LIBM': '', 'LIBOBJDIR': 'Python/', 'LIBOBJS': '', - 'LIBPC': '/oml/openmedialibrary_platform_darwin/dist/lib/pkgconfig', - 'LIBPL': '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7/config-3.7m-darwin', + 'LIBPC': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/pkgconfig', + 'LIBPL': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7/config-3.7m-darwin', 'LIBRARY': 'libpython3.7m.a', 'LIBRARY_OBJS': '\\', 'LIBRARY_OBJS_OMIT_FROZEN': '\\', @@ -596,14 +571,14 @@ build_time_vars = {'ABIFLAGS': 'm', 'LOG1P_DROPS_ZERO_SIGN': 0, 'MACHDEP': 'darwin', 'MACHDEP_OBJS': '', - 'MACHDESTLIB': '/oml/openmedialibrary_platform_darwin/dist/lib/python3.7', - 'MACOSX_DEPLOYMENT_TARGET': '10.8', + 'MACHDESTLIB': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib/python3.7', + 'MACOSX_DEPLOYMENT_TARGET': '10.11', 'MAINCC': 'gcc', 'MAJOR_IN_MKDEV': 0, 'MAJOR_IN_SYSMACROS': 0, 'MAKESETUP': './Modules/makesetup', - 'MANDIR': '/oml/openmedialibrary_platform_darwin/dist/share/man', - 'MKDIR_P': './install-sh -c -d', + 'MANDIR': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/share/man', + 'MKDIR_P': '/usr/local/bin/gmkdir -p', 'MODBUILT_NAMES': 'posix errno pwd _sre _codecs _weakref _functools ' '_operator _collections _abc itertools atexit _signal ' '_stat time _thread _locale _io zipimport ' @@ -629,8 +604,8 @@ build_time_vars = {'ABIFLAGS': 'm', 'MVWDELCH_IS_EXPRESSION': 1, 'NO_AS_NEEDED': '', 'OBJECT_OBJS': '\\', - 'OPENSSL_INCLUDES': '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include', - 'OPENSSL_LDFLAGS': '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib', + 'OPENSSL_INCLUDES': '-I/usr/local/opt/openssl/include', + 'OPENSSL_LDFLAGS': '-L/usr/local/opt/openssl/lib', 'OPENSSL_LIBS': '-lssl -lcrypto', 'OPT': '-DNDEBUG -g -fwrapv -O3 -Wall', 'OTHER_LIBTOOL_OPT': '', @@ -662,7 +637,7 @@ build_time_vars = {'ABIFLAGS': 'm', 'PYTHONFRAMEWORKPREFIX': '', 'PYTHONPATH': '', 'PYTHON_FOR_BUILD': './python.exe -E', - 'PYTHON_FOR_REGEN': 'python', + 'PYTHON_FOR_REGEN': 'python3.7', 'PYTHON_HEADERS': '\\', 'PYTHON_OBJS': '\\', 'PY_BUILTIN_MODULE_CFLAGS': '-Wno-unused-result -Wsign-compare ' @@ -673,18 +648,18 @@ build_time_vars = {'ABIFLAGS': 'm', '-Wstrict-prototypes ' '-Werror=implicit-function-declaration -I. ' '-I./Include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include ' '-DPy_BUILD_CORE_BUILTIN', 'PY_CFLAGS': '-Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG ' '-g -fwrapv -O3 -Wall', @@ -698,53 +673,38 @@ build_time_vars = {'ABIFLAGS': 'm', '-Wno-unused-result -Wno-unused-parameter ' '-Wno-missing-field-initializers -Wstrict-prototypes ' '-Werror=implicit-function-declaration -I. -I./Include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include -I/usr/local/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include -I/usr/local/opt/zlib/include ' '-DPy_BUILD_CORE', - 'PY_CORE_LDFLAGS': '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib', - 'PY_CPPFLAGS': '-I. -I./Include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include', + 'PY_CORE_LDFLAGS': '-L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib ' + '-L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib ' + '-L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl/lib ' + '-L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib ' + '-L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib', + 'PY_CPPFLAGS': '-I. -I./Include -I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include -I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include -I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include', 'PY_FORMAT_SIZE_T': '"z"', - 'PY_LDFLAGS': '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib ' - '-L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib', + 'PY_LDFLAGS': '-L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib ' + '-L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib ' + '-L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl/lib ' + '-L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib ' + '-L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib', 'PY_LDFLAGS_NODIST': '', 'PY_SSL_DEFAULT_CIPHERS': 1, 'PY_SSL_DEFAULT_CIPHER_STRING': 0, @@ -753,18 +713,18 @@ build_time_vars = {'ABIFLAGS': 'm', '-Wno-unused-result -Wno-unused-parameter ' '-Wno-missing-field-initializers -Wstrict-prototypes ' '-Werror=implicit-function-declaration -I. -I./Include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include ' - '-I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include', + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include ' + '-I/usr/local/opt/openssl/include/openssl ' + '-I/usr/local/opt/openssl/include ' + '-I/usr/local/opt/sqlite/include ' + '-I/usr/local/opt/readline/include ' + '-I/usr/local/opt/xz/include ' + '-I/usr/local/opt/zlib/include', 'Py_DEBUG': 0, 'Py_ENABLE_SHARED': 0, 'Py_HASH_ALGORITHM': 0, @@ -773,7 +733,7 @@ build_time_vars = {'ABIFLAGS': 'm', 'RESSRCDIR': 'Mac/Resources/framework', 'RETSIGTYPE': 'void', 'RUNSHARED': '', - 'SCRIPTDIR': '/oml/openmedialibrary_platform_darwin/dist/lib', + 'SCRIPTDIR': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/lib', 'SETPGRP_HAVE_ARG': 0, 'SGI_ABI': '@SGI_ABI@', 'SHELL': '/bin/sh', @@ -823,7 +783,7 @@ build_time_vars = {'ABIFLAGS': 'm', 'TM_IN_SYS_TIME': 0, 'UNICODE_DEPS': '\\', 'UNIVERSALSDK': '', - 'UPDATE_FILE': 'python ./Tools/scripts/update_file.py', + 'UPDATE_FILE': 'python3.7 ./Tools/scripts/update_file.py', 'USE_COMPUTED_GOTOS': 0, 'VERSION': '3.7', 'WINDOW_HAS_FLAGS': 1, @@ -836,9 +796,9 @@ build_time_vars = {'ABIFLAGS': 'm', 'WITH_VALGRIND': 0, 'X87_DOUBLE_ROUNDING': 0, 'XMLLIBSUBDIRS': 'xml xml/dom xml/etree xml/parsers xml/sax', - 'abs_builddir': '/oml/openmedialibrary_platform_darwin/Python-3.7.2', - 'abs_srcdir': '/oml/openmedialibrary_platform_darwin/Python-3.7.2', - 'datarootdir': '/oml/openmedialibrary_platform_darwin/dist/share', - 'exec_prefix': '/oml/openmedialibrary_platform_darwin/dist', - 'prefix': '/oml/openmedialibrary_platform_darwin/dist', + 'abs_builddir': '/Users/travis/build/2620/openmedialibrary_darwin_build/Python-3.7.2', + 'abs_srcdir': '/Users/travis/build/2620/openmedialibrary_darwin_build/Python-3.7.2', + 'datarootdir': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/share', + 'exec_prefix': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64', + 'prefix': '/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64', 'srcdir': '.'} diff --git a/lib/python3.7/config-3.7m-darwin/Makefile b/lib/python3.7/config-3.7m-darwin/Makefile index 96342e9..ffd8794 100644 --- a/lib/python3.7/config-3.7m-darwin/Makefile +++ b/lib/python3.7/config-3.7m-darwin/Makefile @@ -30,8 +30,8 @@ MODLIBS= $(LOCALMODLIBS) $(BASEMODLIBS) VERSION= 3.7 srcdir= . -abs_srcdir= /oml/openmedialibrary_platform_darwin/Python-3.7.2 -abs_builddir= /oml/openmedialibrary_platform_darwin/Python-3.7.2 +abs_srcdir= /Users/travis/build/2620/openmedialibrary_darwin_build/Python-3.7.2 +abs_builddir= /Users/travis/build/2620/openmedialibrary_darwin_build/Python-3.7.2 CC= gcc @@ -64,7 +64,7 @@ SHELL= /bin/sh LN= ln # Portable install script (configure doesn't always guess right) -INSTALL= /usr/bin/install -c +INSTALL= /usr/local/bin/ginstall -c INSTALL_PROGRAM=${INSTALL} INSTALL_SCRIPT= ${INSTALL} INSTALL_DATA= ${INSTALL} -m 644 @@ -73,7 +73,7 @@ INSTALL_DATA= ${INSTALL} -m 644 # Also, making them read-only seems to be a good idea... INSTALL_SHARED= ${INSTALL} -m 555 -MKDIR_P= ./install-sh -c -d +MKDIR_P= /usr/local/bin/gmkdir -p MAKESETUP= $(srcdir)/Modules/makesetup @@ -90,8 +90,8 @@ CONFIGURE_CFLAGS_NODIST= -std=c99 -Wextra -Wno-unused-result -Wno-unused-paramet # Use it when a linker flag should _not_ be part of the distutils LDFLAGS # once Python is installed (bpo-35257) CONFIGURE_LDFLAGS_NODIST= -CONFIGURE_CPPFLAGS= -I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl -I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include -I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include -I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include -I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include -I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include -CONFIGURE_LDFLAGS= -L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib +CONFIGURE_CPPFLAGS= -I/usr/local/opt/openssl/include/openssl -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/opt/readline/include -I/usr/local/opt/xz/include -I/usr/local/opt/zlib/include +CONFIGURE_LDFLAGS= -L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib # Avoid assigning CFLAGS, LDFLAGS, etc. so users can use them on the # command line to append to these values without stomping the pre-set # values. @@ -129,7 +129,7 @@ MULTIARCH= darwin MULTIARCH_CPPFLAGS = -DMULTIARCH=\"darwin\" # Install prefix for architecture-independent files -prefix= /oml/openmedialibrary_platform_darwin/dist +prefix= /Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64 # Install prefix for architecture-dependent files exec_prefix= ${prefix} @@ -173,7 +173,7 @@ PYTHONFRAMEWORKINSTALLDIR= # Deployment target selected during configure, to be checked # by distutils. The export statement is needed to ensure that the # deployment target is active during build. -MACOSX_DEPLOYMENT_TARGET=10.8 +MACOSX_DEPLOYMENT_TARGET=10.11 export MACOSX_DEPLOYMENT_TARGET # Option to install to strip binaries @@ -192,9 +192,9 @@ RUNSHARED= ENSUREPIP= upgrade # OpenSSL options for setup.py so sysconfig can pick up AC_SUBST() vars. -OPENSSL_INCLUDES=-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include +OPENSSL_INCLUDES=-I/usr/local/opt/openssl/include OPENSSL_LIBS=-lssl -lcrypto -OPENSSL_LDFLAGS=-L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib +OPENSSL_LDFLAGS=-L/usr/local/opt/openssl/lib # Modes for directories, executables and data files created by the # install process. Default to user-only-writable for all file types. @@ -203,7 +203,7 @@ EXEMODE= 755 FILEMODE= 644 # configure script arguments -CONFIG_ARGS= 'MACOSX_DEPLOYMENT_TARGET=10.8' '--with-openssl=/oml/openmedialibrary_platform_darwin/brew/opt/openssl' '--prefix=/oml/openmedialibrary_platform_darwin/dist' 'LDFLAGS= -L/oml/openmedialibrary_platform_darwin/brew/opt/openssl/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/readline/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/xz/lib -L/oml/openmedialibrary_platform_darwin/brew/opt/zlib/lib' 'CPPFLAGS=-I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include/openssl -I/oml/openmedialibrary_platform_darwin/brew/opt/openssl/include -I/oml/openmedialibrary_platform_darwin/brew/opt/sqlite/include -I/oml/openmedialibrary_platform_darwin/brew/opt/readline/include -I/oml/openmedialibrary_platform_darwin/brew/opt/xz/include -I/oml/openmedialibrary_platform_darwin/brew/opt/zlib/include' +CONFIG_ARGS= 'MACOSX_DEPLOYMENT_TARGET=10.11' '--with-openssl=/usr/local/opt/openssl' '--prefix=/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64' 'LDFLAGS= -L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/xz/lib -L/usr/local/opt/zlib/lib' 'CPPFLAGS=-I/usr/local/opt/openssl/include/openssl -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/opt/readline/include -I/usr/local/opt/xz/include -I/usr/local/opt/zlib/include' # Subdirectories with code @@ -243,12 +243,12 @@ LIBOBJS= PYTHON= python$(EXE) BUILDPYTHON= python$(BUILDEXE) -PYTHON_FOR_REGEN=python -UPDATE_FILE=python $(srcdir)/Tools/scripts/update_file.py +PYTHON_FOR_REGEN=python3.7 +UPDATE_FILE=python3.7 $(srcdir)/Tools/scripts/update_file.py PYTHON_FOR_BUILD=./$(BUILDPYTHON) -E _PYTHON_HOST_PLATFORM= -BUILD_GNU_TYPE= x86_64-apple-darwin18.2.0 -HOST_GNU_TYPE= x86_64-apple-darwin18.2.0 +BUILD_GNU_TYPE= x86_64-apple-darwin15.6.0 +HOST_GNU_TYPE= x86_64-apple-darwin15.6.0 # Tcl and Tk config info from --with-tcltk-includes and -libs options TCLTK_INCLUDES= diff --git a/lib/python3.7/config-3.7m-darwin/python-config.py b/lib/python3.7/config-3.7m-darwin/python-config.py index f159ad5..6928ead 100755 --- a/lib/python3.7/config-3.7m-darwin/python-config.py +++ b/lib/python3.7/config-3.7m-darwin/python-config.py @@ -1,4 +1,4 @@ -#!/oml/openmedialibrary_platform_darwin/dist/bin/python3.7m +#!/Users/travis/build/2620/openmedialibrary_darwin_build/platform_darwin64/bin/python3.7m # -*- python -*- # Keep this script in sync with python-config.sh.in diff --git a/lib/python3.7/config-3.7m-darwin/python.o b/lib/python3.7/config-3.7m-darwin/python.o index e6c4114..b8c0256 100644 Binary files a/lib/python3.7/config-3.7m-darwin/python.o and b/lib/python3.7/config-3.7m-darwin/python.o differ diff --git a/lib/python3.7/lib-dynload/_asyncio.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_asyncio.cpython-37m-darwin.so index 346a6b8..6cc6822 100755 Binary files a/lib/python3.7/lib-dynload/_asyncio.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_asyncio.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_bisect.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_bisect.cpython-37m-darwin.so index 5250d8f..dd7888d 100755 Binary files a/lib/python3.7/lib-dynload/_bisect.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_bisect.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_blake2.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_blake2.cpython-37m-darwin.so index cee9550..27308d7 100755 Binary files a/lib/python3.7/lib-dynload/_blake2.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_blake2.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_bz2.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_bz2.cpython-37m-darwin.so index 4737f93..a6144fd 100755 Binary files a/lib/python3.7/lib-dynload/_bz2.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_bz2.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_codecs_cn.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_codecs_cn.cpython-37m-darwin.so index c8a280e..d1e81a1 100755 Binary files a/lib/python3.7/lib-dynload/_codecs_cn.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_codecs_cn.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_codecs_hk.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_codecs_hk.cpython-37m-darwin.so index c53f155..69b68a8 100755 Binary files a/lib/python3.7/lib-dynload/_codecs_hk.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_codecs_hk.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_codecs_iso2022.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_codecs_iso2022.cpython-37m-darwin.so index e471d2e..177c1db 100755 Binary files a/lib/python3.7/lib-dynload/_codecs_iso2022.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_codecs_iso2022.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_codecs_jp.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_codecs_jp.cpython-37m-darwin.so index b576ce6..10aff0c 100755 Binary files a/lib/python3.7/lib-dynload/_codecs_jp.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_codecs_jp.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_codecs_kr.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_codecs_kr.cpython-37m-darwin.so index 93df618..d9ac8c6 100755 Binary files a/lib/python3.7/lib-dynload/_codecs_kr.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_codecs_kr.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_codecs_tw.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_codecs_tw.cpython-37m-darwin.so index c497fb3..2980127 100755 Binary files a/lib/python3.7/lib-dynload/_codecs_tw.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_codecs_tw.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_contextvars.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_contextvars.cpython-37m-darwin.so index 7f0956d..e3dcbd4 100755 Binary files a/lib/python3.7/lib-dynload/_contextvars.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_contextvars.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_crypt.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_crypt.cpython-37m-darwin.so index 010029a..70c83fc 100755 Binary files a/lib/python3.7/lib-dynload/_crypt.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_crypt.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_csv.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_csv.cpython-37m-darwin.so index 6243e0c..2e3d5dd 100755 Binary files a/lib/python3.7/lib-dynload/_csv.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_csv.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so index c6517db..219a56c 100755 Binary files a/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_ctypes_test.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_ctypes_test.cpython-37m-darwin.so index 897df66..7aca8cb 100755 Binary files a/lib/python3.7/lib-dynload/_ctypes_test.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_ctypes_test.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_curses.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_curses.cpython-37m-darwin.so index c179b3e..abf813a 100755 Binary files a/lib/python3.7/lib-dynload/_curses.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_curses.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_curses_panel.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_curses_panel.cpython-37m-darwin.so index d30e843..e16b67f 100755 Binary files a/lib/python3.7/lib-dynload/_curses_panel.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_curses_panel.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_datetime.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_datetime.cpython-37m-darwin.so index a3be276..bdbe04b 100755 Binary files a/lib/python3.7/lib-dynload/_datetime.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_datetime.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_dbm.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_dbm.cpython-37m-darwin.so new file mode 100755 index 0000000..eaecc1d Binary files /dev/null and b/lib/python3.7/lib-dynload/_dbm.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_decimal.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_decimal.cpython-37m-darwin.so index 24e238b..1830f43 100755 Binary files a/lib/python3.7/lib-dynload/_decimal.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_decimal.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_elementtree.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_elementtree.cpython-37m-darwin.so index d47e228..640a2b1 100755 Binary files a/lib/python3.7/lib-dynload/_elementtree.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_elementtree.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_gdbm.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_gdbm.cpython-37m-darwin.so index 9246609..79db293 100755 Binary files a/lib/python3.7/lib-dynload/_gdbm.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_gdbm.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_hashlib.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_hashlib.cpython-37m-darwin.so index d0bcd9f..1c5ff58 100755 Binary files a/lib/python3.7/lib-dynload/_hashlib.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_hashlib.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_heapq.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_heapq.cpython-37m-darwin.so index a8767d8..f49e8ff 100755 Binary files a/lib/python3.7/lib-dynload/_heapq.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_heapq.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_json.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_json.cpython-37m-darwin.so index bb519f7..9f02b11 100755 Binary files a/lib/python3.7/lib-dynload/_json.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_json.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_lsprof.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_lsprof.cpython-37m-darwin.so index 6ca5123..1ab2b59 100755 Binary files a/lib/python3.7/lib-dynload/_lsprof.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_lsprof.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_lzma.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_lzma.cpython-37m-darwin.so index 57faa4d..cb01660 100755 Binary files a/lib/python3.7/lib-dynload/_lzma.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_lzma.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_md5.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_md5.cpython-37m-darwin.so index 857f41a..7dad9c6 100755 Binary files a/lib/python3.7/lib-dynload/_md5.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_md5.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_multibytecodec.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_multibytecodec.cpython-37m-darwin.so index 8c31ce1..dc5e955 100755 Binary files a/lib/python3.7/lib-dynload/_multibytecodec.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_multibytecodec.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_multiprocessing.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_multiprocessing.cpython-37m-darwin.so index 359fb8b..3b66895 100755 Binary files a/lib/python3.7/lib-dynload/_multiprocessing.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_multiprocessing.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_opcode.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_opcode.cpython-37m-darwin.so index 1934bdf..00df794 100755 Binary files a/lib/python3.7/lib-dynload/_opcode.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_opcode.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_pickle.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_pickle.cpython-37m-darwin.so index 6a934ab..fea6695 100755 Binary files a/lib/python3.7/lib-dynload/_pickle.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_pickle.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_posixsubprocess.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_posixsubprocess.cpython-37m-darwin.so index 9545f76..68cba17 100755 Binary files a/lib/python3.7/lib-dynload/_posixsubprocess.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_posixsubprocess.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_queue.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_queue.cpython-37m-darwin.so index 52970e4..1b08e0a 100755 Binary files a/lib/python3.7/lib-dynload/_queue.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_queue.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_random.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_random.cpython-37m-darwin.so index 26cef9e..975878b 100755 Binary files a/lib/python3.7/lib-dynload/_random.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_random.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_scproxy.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_scproxy.cpython-37m-darwin.so index 81f7355..e305e3e 100755 Binary files a/lib/python3.7/lib-dynload/_scproxy.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_scproxy.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_sha1.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_sha1.cpython-37m-darwin.so index caf68b1..0662af2 100755 Binary files a/lib/python3.7/lib-dynload/_sha1.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_sha1.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_sha256.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_sha256.cpython-37m-darwin.so index b611706..bc307e9 100755 Binary files a/lib/python3.7/lib-dynload/_sha256.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_sha256.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_sha3.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_sha3.cpython-37m-darwin.so index 8e7b2fa..ad950fe 100755 Binary files a/lib/python3.7/lib-dynload/_sha3.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_sha3.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_sha512.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_sha512.cpython-37m-darwin.so index 14fcead..07e234f 100755 Binary files a/lib/python3.7/lib-dynload/_sha512.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_sha512.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_socket.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_socket.cpython-37m-darwin.so index e4630a9..8c18c1e 100755 Binary files a/lib/python3.7/lib-dynload/_socket.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_socket.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_sqlite3.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_sqlite3.cpython-37m-darwin.so index 66f2861..7dfb0b6 100755 Binary files a/lib/python3.7/lib-dynload/_sqlite3.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_sqlite3.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so index e992c78..8add2cc 100755 Binary files a/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_struct.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_struct.cpython-37m-darwin.so index 48d6edb..6019dc1 100755 Binary files a/lib/python3.7/lib-dynload/_struct.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_struct.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_testbuffer.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_testbuffer.cpython-37m-darwin.so index 2f89919..1ee4d7f 100755 Binary files a/lib/python3.7/lib-dynload/_testbuffer.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_testbuffer.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_testcapi.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_testcapi.cpython-37m-darwin.so index cd435a5..da1ad9d 100755 Binary files a/lib/python3.7/lib-dynload/_testcapi.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_testcapi.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_testimportmultiple.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_testimportmultiple.cpython-37m-darwin.so index ca4ea1b..6ba936e 100755 Binary files a/lib/python3.7/lib-dynload/_testimportmultiple.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_testimportmultiple.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_testmultiphase.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_testmultiphase.cpython-37m-darwin.so index 90fc852..043b4be 100755 Binary files a/lib/python3.7/lib-dynload/_testmultiphase.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_testmultiphase.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_tkinter.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_tkinter.cpython-37m-darwin.so new file mode 100755 index 0000000..c086067 Binary files /dev/null and b/lib/python3.7/lib-dynload/_tkinter.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_uuid.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_uuid.cpython-37m-darwin.so new file mode 100755 index 0000000..2f9c19b Binary files /dev/null and b/lib/python3.7/lib-dynload/_uuid.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/_xxtestfuzz.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/_xxtestfuzz.cpython-37m-darwin.so index 00dedbe..aee8c09 100755 Binary files a/lib/python3.7/lib-dynload/_xxtestfuzz.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/_xxtestfuzz.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/array.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/array.cpython-37m-darwin.so index 9f76ba7..7ed0fc6 100755 Binary files a/lib/python3.7/lib-dynload/array.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/array.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/audioop.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/audioop.cpython-37m-darwin.so index 732d7da..8faf033 100755 Binary files a/lib/python3.7/lib-dynload/audioop.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/audioop.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/binascii.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/binascii.cpython-37m-darwin.so index 1abb018..df8ae4a 100755 Binary files a/lib/python3.7/lib-dynload/binascii.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/binascii.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/cmath.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/cmath.cpython-37m-darwin.so index 4a4323d..1fb3208 100755 Binary files a/lib/python3.7/lib-dynload/cmath.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/cmath.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/fcntl.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/fcntl.cpython-37m-darwin.so index ca56fb7..a6b6717 100755 Binary files a/lib/python3.7/lib-dynload/fcntl.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/fcntl.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/grp.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/grp.cpython-37m-darwin.so index 8e5c24f..14a6332 100755 Binary files a/lib/python3.7/lib-dynload/grp.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/grp.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/math.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/math.cpython-37m-darwin.so index d847ecd..5b7771f 100755 Binary files a/lib/python3.7/lib-dynload/math.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/math.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/mmap.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/mmap.cpython-37m-darwin.so index 38f2617..ef89a7a 100755 Binary files a/lib/python3.7/lib-dynload/mmap.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/mmap.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/nis.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/nis.cpython-37m-darwin.so new file mode 100755 index 0000000..167bbf9 Binary files /dev/null and b/lib/python3.7/lib-dynload/nis.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/parser.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/parser.cpython-37m-darwin.so index 2e0e253..3c01975 100755 Binary files a/lib/python3.7/lib-dynload/parser.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/parser.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/pyexpat.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/pyexpat.cpython-37m-darwin.so index 0516cde..619eff0 100755 Binary files a/lib/python3.7/lib-dynload/pyexpat.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/pyexpat.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/readline.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/readline.cpython-37m-darwin.so index 97749df..7ca7757 100755 Binary files a/lib/python3.7/lib-dynload/readline.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/readline.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/resource.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/resource.cpython-37m-darwin.so index 46fa1d5..f7f0d70 100755 Binary files a/lib/python3.7/lib-dynload/resource.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/resource.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/select.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/select.cpython-37m-darwin.so index 5c306a8..c5bdac5 100755 Binary files a/lib/python3.7/lib-dynload/select.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/select.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/syslog.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/syslog.cpython-37m-darwin.so index a61d442..355519a 100755 Binary files a/lib/python3.7/lib-dynload/syslog.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/syslog.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/termios.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/termios.cpython-37m-darwin.so index 67539b0..5658616 100755 Binary files a/lib/python3.7/lib-dynload/termios.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/termios.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/unicodedata.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/unicodedata.cpython-37m-darwin.so index a99442c..b826408 100755 Binary files a/lib/python3.7/lib-dynload/unicodedata.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/unicodedata.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/xxlimited.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/xxlimited.cpython-37m-darwin.so index f40da5c..01cf0a5 100755 Binary files a/lib/python3.7/lib-dynload/xxlimited.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/xxlimited.cpython-37m-darwin.so differ diff --git a/lib/python3.7/lib-dynload/zlib.cpython-37m-darwin.so b/lib/python3.7/lib-dynload/zlib.cpython-37m-darwin.so index 52d9ec4..723361c 100755 Binary files a/lib/python3.7/lib-dynload/zlib.cpython-37m-darwin.so and b/lib/python3.7/lib-dynload/zlib.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_AES.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_AES.cpython-37m-darwin.so index 408bff6..0eb1a45 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_AES.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_AES.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_ARC2.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_ARC2.cpython-37m-darwin.so index 4c03099..15ca34a 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_ARC2.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_ARC2.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_ARC4.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_ARC4.cpython-37m-darwin.so index da5e92d..9434108 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_ARC4.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_ARC4.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_Blowfish.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_Blowfish.cpython-37m-darwin.so index d373abf..5ca4b0e 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_Blowfish.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_Blowfish.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_CAST.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_CAST.cpython-37m-darwin.so index e94a4f2..cbd0118 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_CAST.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_CAST.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_DES.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_DES.cpython-37m-darwin.so index 78a44bc..600bd51 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_DES.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_DES.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_DES3.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_DES3.cpython-37m-darwin.so index c63a7ad..b6897a6 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_DES3.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_DES3.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Cipher/_XOR.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Cipher/_XOR.cpython-37m-darwin.so index a9ce196..52d99bc 100755 Binary files a/lib/python3.7/site-packages/Crypto/Cipher/_XOR.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Cipher/_XOR.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_MD2.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_MD2.cpython-37m-darwin.so index 70984f0..581f4ec 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_MD2.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_MD2.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_MD4.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_MD4.cpython-37m-darwin.so index 03c7fed..4c46d80 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_MD4.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_MD4.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_RIPEMD160.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_RIPEMD160.cpython-37m-darwin.so index 5481a62..e1294dc 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_RIPEMD160.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_RIPEMD160.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_SHA224.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_SHA224.cpython-37m-darwin.so index 07ec593..d2d27fc 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_SHA224.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_SHA224.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_SHA256.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_SHA256.cpython-37m-darwin.so index 9ed9f6c..d98cb19 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_SHA256.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_SHA256.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_SHA384.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_SHA384.cpython-37m-darwin.so index dcc3724..b8da351 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_SHA384.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_SHA384.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Hash/_SHA512.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Hash/_SHA512.cpython-37m-darwin.so index 048d127..51d0224 100755 Binary files a/lib/python3.7/site-packages/Crypto/Hash/_SHA512.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Hash/_SHA512.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/PublicKey/_fastmath.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/PublicKey/_fastmath.cpython-37m-darwin.so new file mode 100755 index 0000000..79ffb54 Binary files /dev/null and b/lib/python3.7/site-packages/Crypto/PublicKey/_fastmath.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Util/_counter.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Util/_counter.cpython-37m-darwin.so index 415a14b..a237619 100755 Binary files a/lib/python3.7/site-packages/Crypto/Util/_counter.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Util/_counter.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/Crypto/Util/strxor.cpython-37m-darwin.so b/lib/python3.7/site-packages/Crypto/Util/strxor.cpython-37m-darwin.so index 11be094..ea33711 100755 Binary files a/lib/python3.7/site-packages/Crypto/Util/strxor.cpython-37m-darwin.so and b/lib/python3.7/site-packages/Crypto/Util/strxor.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libfreetype.6.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libfreetype.6.dylib index fa60c0d..451765c 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libfreetype.6.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libfreetype.6.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libjpeg.9.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libjpeg.9.dylib index 7feebd1..44f98d7 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libjpeg.9.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libjpeg.9.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/liblcms2.2.dylib b/lib/python3.7/site-packages/PIL/.dylibs/liblcms2.2.dylib index 8f16c5b..149977d 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/liblcms2.2.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/liblcms2.2.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/liblzma.5.dylib b/lib/python3.7/site-packages/PIL/.dylibs/liblzma.5.dylib index e145e5e..7079c68 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/liblzma.5.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/liblzma.5.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libopenjp2.2.1.0.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libopenjp2.2.1.0.dylib index 180ee09..3d0b8fb 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libopenjp2.2.1.0.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libopenjp2.2.1.0.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libpng16.16.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libpng16.16.dylib index 77a3038..cddf931 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libpng16.16.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libpng16.16.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libtiff.5.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libtiff.5.dylib index 6a2be0f..50edbc5 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libtiff.5.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libtiff.5.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libwebp.7.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libwebp.7.dylib index 130dae4..bfd14d0 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libwebp.7.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libwebp.7.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libwebpdemux.2.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libwebpdemux.2.dylib index 7a3480e..22702e8 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libwebpdemux.2.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libwebpdemux.2.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libwebpmux.3.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libwebpmux.3.dylib index 274dce9..fa1374d 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libwebpmux.3.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libwebpmux.3.dylib differ diff --git a/lib/python3.7/site-packages/PIL/.dylibs/libz.1.2.11.dylib b/lib/python3.7/site-packages/PIL/.dylibs/libz.1.2.11.dylib index 2c9e209..883c253 100644 Binary files a/lib/python3.7/site-packages/PIL/.dylibs/libz.1.2.11.dylib and b/lib/python3.7/site-packages/PIL/.dylibs/libz.1.2.11.dylib differ diff --git a/lib/python3.7/site-packages/PIL/BmpImagePlugin.py b/lib/python3.7/site-packages/PIL/BmpImagePlugin.py index 731b94e..e146f4d 100644 --- a/lib/python3.7/site-packages/PIL/BmpImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/BmpImagePlugin.py @@ -50,16 +50,17 @@ def _accept(prefix): return prefix[:2] == b"BM" -# ============================================================================== +# ============================================================================= # Image plugin for the Windows BMP format. -# ============================================================================== +# ============================================================================= class BmpImageFile(ImageFile.ImageFile): """ Image plugin for the Windows Bitmap format (BMP) """ - # -------------------------------------------------------------- Description + # ------------------------------------------------------------- Description format_description = "Windows Bitmap" format = "BMP" - # --------------------------------------------------- BMP Compression values + + # -------------------------------------------------- BMP Compression values COMPRESSIONS = { 'RAW': 0, 'RLE8': 1, @@ -79,12 +80,14 @@ class BmpImageFile(ImageFile.ImageFile): # read bmp header size @offset 14 (this is part of the header size) file_info['header_size'] = i32(read(4)) file_info['direction'] = -1 - # --------------------- If requested, read header at a specific position + + # -------------------- If requested, read header at a specific position # read the rest of the bmp header, without its size header_data = ImageFile._safe_read(self.fp, file_info['header_size'] - 4) - # --------------------------------------------------- IBM OS/2 Bitmap v1 - # ------ This format has different offsets because of width/height types + + # -------------------------------------------------- IBM OS/2 Bitmap v1 + # ----- This format has different offsets because of width/height types if file_info['header_size'] == 12: file_info['width'] = i16(header_data[0:2]) file_info['height'] = i16(header_data[2:4]) @@ -92,8 +95,10 @@ class BmpImageFile(ImageFile.ImageFile): file_info['bits'] = i16(header_data[6:8]) file_info['compression'] = self.RAW file_info['palette_padding'] = 3 - # ---------------------------------------------- Windows Bitmap v2 to v5 - elif file_info['header_size'] in (40, 64, 108, 124): # v3, OS/2 v2, v4, v5 + + # --------------------------------------------- Windows Bitmap v2 to v5 + # v3, OS/2 v2, v4, v5 + elif file_info['header_size'] in (40, 64, 108, 124): if file_info['header_size'] >= 40: # v3 and OS/2 file_info['y_flip'] = i8(header_data[7]) == 0xff file_info['direction'] = 1 if file_info['y_flip'] else -1 @@ -119,12 +124,15 @@ class BmpImageFile(ImageFile.ImageFile): 'g_mask', 'b_mask', 'a_mask']): - file_info[mask] = i32(header_data[36+idx*4:40+idx*4]) + file_info[mask] = i32( + header_data[36 + idx * 4:40 + idx * 4] + ) else: # 40 byte headers only have the three components in the - # bitfields masks, - # ref: https://msdn.microsoft.com/en-us/library/windows/desktop/dd183376(v=vs.85).aspx - # See also https://github.com/python-pillow/Pillow/issues/1293 + # bitfields masks, ref: + # https://msdn.microsoft.com/en-us/library/windows/desktop/dd183376(v=vs.85).aspx + # See also + # https://github.com/python-pillow/Pillow/issues/1293 # There is a 4th component in the RGBQuad, in the alpha # location, but it is listed as a reserved component, # and it is not generally an alpha channel @@ -141,20 +149,27 @@ class BmpImageFile(ImageFile.ImageFile): else: raise IOError("Unsupported BMP header type (%d)" % file_info['header_size']) + # ------------------ Special case : header is reported 40, which # ---------------------- is shorter than real size for bpp >= 16 self._size = file_info['width'], file_info['height'] - # -------- If color count was not found in the header, compute from bits - file_info['colors'] = file_info['colors'] if file_info.get('colors', 0) else (1 << file_info['bits']) - # -------------------------------- Check abnormal values for DOS attacks + + # ------- If color count was not found in the header, compute from bits + file_info["colors"] = (file_info["colors"] + if file_info.get("colors", 0) + else (1 << file_info["bits"])) + + # ------------------------------- Check abnormal values for DOS attacks if file_info['width'] * file_info['height'] > 2**31: raise IOError("Unsupported BMP Size: (%dx%d)" % self.size) - # ----------------------- Check bit depth for unusual unsupported values + + # ---------------------- Check bit depth for unusual unsupported values self.mode, raw_mode = BIT2MODE.get(file_info['bits'], (None, None)) if self.mode is None: raise IOError("Unsupported BMP pixel depth (%d)" % file_info['bits']) - # ----------------- Process BMP with Bitfields compression (not palette) + + # ---------------- Process BMP with Bitfields compression (not palette) if file_info['compression'] == self.BITFIELDS: SUPPORTED = { 32: [(0xff0000, 0xff00, 0xff, 0x0), @@ -176,7 +191,9 @@ class BmpImageFile(ImageFile.ImageFile): if file_info['bits'] in SUPPORTED: if file_info['bits'] == 32 and \ file_info['rgba_mask'] in SUPPORTED[file_info['bits']]: - raw_mode = MASK_MODES[(file_info['bits'], file_info['rgba_mask'])] + raw_mode = MASK_MODES[ + (file_info["bits"], file_info["rgba_mask"]) + ] self.mode = "RGBA" if raw_mode in ("BGRA",) else self.mode elif (file_info['bits'] in (24, 16) and file_info['rgb_mask'] in SUPPORTED[file_info['bits']]): @@ -193,9 +210,11 @@ class BmpImageFile(ImageFile.ImageFile): else: raise IOError("Unsupported BMP compression (%d)" % file_info['compression']) - # ---------------- Once the header is processed, process the palette/LUT + + # --------------- Once the header is processed, process the palette/LUT if self.mode == "P": # Paletted for 1, 4 and 8 bit images - # ----------------------------------------------------- 1-bit images + + # ---------------------------------------------------- 1-bit images if not (0 < file_info['colors'] <= 65536): raise IOError("Unsupported BMP Palette size (%d)" % file_info['colors']) @@ -205,12 +224,14 @@ class BmpImageFile(ImageFile.ImageFile): greyscale = True indices = (0, 255) if file_info['colors'] == 2 else \ list(range(file_info['colors'])) - # ------------------ Check if greyscale and ignore palette if so + + # ----------------- Check if greyscale and ignore palette if so for ind, val in enumerate(indices): rgb = palette[ind*padding:ind*padding + 3] if rgb != o8(val) * 3: greyscale = False - # -------- If all colors are grey, white or black, ditch palette + + # ------- If all colors are grey, white or black, ditch palette if greyscale: self.mode = "1" if file_info['colors'] == 2 else "L" raw_mode = self.mode @@ -219,7 +240,7 @@ class BmpImageFile(ImageFile.ImageFile): self.palette = ImagePalette.raw( "BGRX" if padding == 4 else "BGR", palette) - # ----------------------------- Finally set the tile data for the plugin + # ---------------------------- Finally set the tile data for the plugin self.info['compression'] = file_info['compression'] self.tile = [ ('raw', @@ -243,9 +264,9 @@ class BmpImageFile(ImageFile.ImageFile): self._bitmap(offset=offset) -# ============================================================================== +# ============================================================================= # Image plugin for the DIB format (BMP alias) -# ============================================================================== +# ============================================================================= class DibImageFile(BmpImageFile): format = "DIB" diff --git a/lib/python3.7/site-packages/PIL/DcxImagePlugin.py b/lib/python3.7/site-packages/PIL/DcxImagePlugin.py index 2045927..34a413d 100644 --- a/lib/python3.7/site-packages/PIL/DcxImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/DcxImagePlugin.py @@ -81,6 +81,15 @@ class DcxImageFile(PcxImageFile): def tell(self): return self.frame + def _close__fp(self): + try: + if self.__fp != self.fp: + self.__fp.close() + except AttributeError: + pass + finally: + self.__fp = None + Image.register_open(DcxImageFile.format, DcxImageFile, _accept) diff --git a/lib/python3.7/site-packages/PIL/DdsImagePlugin.py b/lib/python3.7/site-packages/PIL/DdsImagePlugin.py index 7660827..edc1b7a 100644 --- a/lib/python3.7/site-packages/PIL/DdsImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/DdsImagePlugin.py @@ -118,7 +118,7 @@ class DdsImageFile(ImageFile.ImageFile): self.mode = "RGBA" pitch, depth, mipmaps = struct.unpack("<3I", header.read(12)) - reserved = struct.unpack("<11I", header.read(44)) + struct.unpack("<11I", header.read(44)) # reserved # pixel format pfsize, pfflags = struct.unpack("<2I", header.read(8)) diff --git a/lib/python3.7/site-packages/PIL/EpsImagePlugin.py b/lib/python3.7/site-packages/PIL/EpsImagePlugin.py index b2dec78..cc2c1b1 100644 --- a/lib/python3.7/site-packages/PIL/EpsImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/EpsImagePlugin.py @@ -125,10 +125,11 @@ def Ghostscript(tile, size, fp, scale=1): "-dSAFER", # safe mode "-sDEVICE=ppmraw", # ppm driver "-sOutputFile=%s" % outfile, # output file + # adjust for image origin "-c", "%d %d translate" % (-bbox[0], -bbox[1]), - # adjust for image origin "-f", infile, # input file - "-c", "showpage", # showpage (see: https://bugs.ghostscript.com/show_bug.cgi?id=698272) + # showpage (see https://bugs.ghostscript.com/show_bug.cgi?id=698272) + "-c", "showpage", ] if gs_windows_binary is not None: diff --git a/lib/python3.7/site-packages/PIL/FliImagePlugin.py b/lib/python3.7/site-packages/PIL/FliImagePlugin.py index c78c8c6..4c3f533 100644 --- a/lib/python3.7/site-packages/PIL/FliImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/FliImagePlugin.py @@ -131,6 +131,9 @@ class FliImageFile(ImageFile.ImageFile): self.__frame = -1 self.__fp.seek(self.__rewind) self.__offset = 128 + else: + # ensure that the previous frame was loaded + self.load() if frame != self.__frame + 1: raise ValueError("cannot seek to frame %d" % frame) @@ -154,6 +157,15 @@ class FliImageFile(ImageFile.ImageFile): def tell(self): return self.__frame + def _close__fp(self): + try: + if self.__fp != self.fp: + self.__fp.close() + except AttributeError: + pass + finally: + self.__fp = None + # # registry diff --git a/lib/python3.7/site-packages/PIL/FtexImagePlugin.py b/lib/python3.7/site-packages/PIL/FtexImagePlugin.py index 08ce0e0..f1b9acd 100644 --- a/lib/python3.7/site-packages/PIL/FtexImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/FtexImagePlugin.py @@ -20,7 +20,14 @@ has the following structure: {format_directory} {data} Where: -{header} = { u32:magic, u32:version, u32:width, u32:height, u32:mipmap_count, u32:format_count } +{header} = { + u32:magic, + u32:version, + u32:width, + u32:height, + u32:mipmap_count, + u32:format_count +} * The "magic" number is "FTEX". * "width" and "height" are the dimensions of the texture. @@ -59,8 +66,8 @@ class FtexImageFile(ImageFile.ImageFile): format_description = "Texture File Format (IW2:EOC)" def _open(self): - magic = struct.unpack("= 3: def __del__(self): + if hasattr(self, "_close__fp"): + self._close__fp() if (hasattr(self, 'fp') and hasattr(self, '_exclusive_fp') and self.fp and self._exclusive_fp): self.fp.close() @@ -813,8 +827,10 @@ class Image(object): Image class automatically loads an opened image when it is accessed for the first time. - This method will close the file associated with the image. See - :ref:`file-handling` for more information. + If the file associated with the image was opened by Pillow, then this + method will close it. The exception to this is if the image has + multiple frames, in which case the file will be left open for seek + operations. See :ref:`file-handling` for more information. :returns: An image access object. :rtype: :ref:`PixelAccess` or :py:class:`PIL.PyAccess` @@ -833,7 +849,7 @@ class Image(object): self.palette.mode = "RGBA" if self.im: - if HAS_CFFI and USE_CFFI_ACCESS: + if cffi and USE_CFFI_ACCESS: if self.pyaccess: return self.pyaccess from . import PyAccess @@ -865,7 +881,7 @@ class Image(object): "L", "RGB" and "CMYK." The **matrix** argument only supports "L" and "RGB". - When translating a color image to black and white (mode "L"), + When translating a color image to greyscale (mode "L"), the library uses the ITU-R 601-2 luma transform:: L = R * 299/1000 + G * 587/1000 + B * 114/1000 @@ -873,9 +889,9 @@ class Image(object): The default method of converting a greyscale ("L") or "RGB" image into a bilevel (mode "1") image uses Floyd-Steinberg dither to approximate the original image luminosity levels. If - dither is NONE, all non-zero values are set to 255 (white). To - use other thresholds, use the :py:meth:`~PIL.Image.Image.point` - method. + dither is NONE, all values larger than 128 are set to 255 (white), + all other values to 0 (black). To use other thresholds, use the + :py:meth:`~PIL.Image.Image.point` method. When converting from "RGBA" to "P" without a **matrix** argument, this passes the operation to :py:meth:`~PIL.Image.Image.quantize`, @@ -961,7 +977,7 @@ class Image(object): if isinstance(t, tuple): try: t = trns_im.palette.getcolor(t) - except: + except Exception: raise ValueError("Couldn't allocate a palette " "color for transparency") trns_im.putpixel((0, 0), t) @@ -998,7 +1014,7 @@ class Image(object): if trns is not None: try: new.info['transparency'] = new.palette.getcolor(trns) - except: + except Exception: # if we can't make a transparent color, don't leave the old # transparency hanging around to mess us up. del(new.info['transparency']) @@ -1028,7 +1044,7 @@ class Image(object): if new_im.mode == 'P': try: new_im.info['transparency'] = new_im.palette.getcolor(trns) - except: + except Exception: del(new_im.info['transparency']) warnings.warn("Couldn't allocate palette entry " + "for transparency") @@ -1047,7 +1063,8 @@ class Image(object): 2 = fast octree 3 = libimagequant :param kmeans: Integer - :param palette: Quantize to the palette of given :py:class:`PIL.Image.Image`. + :param palette: Quantize to the palette of given + :py:class:`PIL.Image.Image`. :returns: A new image """ @@ -1634,7 +1651,8 @@ class Image(object): """ Modifies the pixel at the given position. The color is given as a single numerical value for single-band images, and a tuple for - multi-band images. + multi-band images. In addition to this, RGB and RGBA tuples are + accepted for P images. Note that this method is relatively slow. For more extensive changes, use :py:meth:`~PIL.Image.Image.paste` or the :py:mod:`~PIL.ImageDraw` @@ -1657,6 +1675,11 @@ class Image(object): if self.pyaccess: return self.pyaccess.putpixel(xy, value) + + if self.mode == "P" and \ + isinstance(value, (list, tuple)) and len(value) in [3, 4]: + # RGB or RGBA value for a P image + value = self.palette.getcolor(value) return self.im.putpixel(xy, value) def remap_palette(self, dest_map, source_palette=None): @@ -1773,11 +1796,10 @@ class Image(object): if self.mode in ("1", "P"): resample = NEAREST - if self.mode == 'LA': - return self.convert('La').resize(size, resample, box).convert('LA') - - if self.mode == 'RGBA': - return self.convert('RGBa').resize(size, resample, box).convert('RGBA') + if self.mode in ['LA', 'RGBA']: + im = self.convert(self.mode[:-1]+'a') + im = im.resize(size, resample, box) + return im.convert(self.mode) self.load() @@ -1849,7 +1871,8 @@ class Image(object): else: post_trans = translate if center is None: - rotn_center = (w / 2.0, h / 2.0) # FIXME These should be rounded to ints? + # FIXME These should be rounded to ints? + rotn_center = (w / 2.0, h / 2.0) else: rotn_center = center @@ -1864,7 +1887,8 @@ class Image(object): return a*x + b*y + c, d*x + e*y + f matrix[2], matrix[5] = transform(-rotn_center[0] - post_trans[0], - -rotn_center[1] - post_trans[1], matrix) + -rotn_center[1] - post_trans[1], + matrix) matrix[2] += rotn_center[0] matrix[5] += rotn_center[1] @@ -1887,7 +1911,8 @@ class Image(object): matrix) w, h = nw, nh - return self.transform((w, h), AFFINE, matrix, resample, fillcolor=fillcolor) + return self.transform((w, h), AFFINE, matrix, resample, + fillcolor=fillcolor) def save(self, fp, format=None, **params): """ @@ -2154,8 +2179,8 @@ class Image(object): :param fill: If **method** is an :py:class:`~PIL.Image.ImageTransformHandler` object, this is one of the arguments passed to it. Otherwise, it is unused. - :param fillcolor: Optional fill color for the area outside the transform - in the output image. + :param fillcolor: Optional fill color for the area outside the + transform in the output image. :returns: An :py:class:`~PIL.Image.Image` object. """ @@ -2620,6 +2645,7 @@ def open(fp, mode="r"): preinit() accept_warnings = [] + def _open_core(fp, filename, prefix): for i in ID: try: @@ -2637,6 +2663,10 @@ def open(fp, mode="r"): # opening failures that are entirely expected. # logger.debug("", exc_info=True) continue + except Exception: + if exclusive_fp: + fp.close() + raise return None im = _open_core(fp, filename, prefix) diff --git a/lib/python3.7/site-packages/PIL/ImageChops.py b/lib/python3.7/site-packages/PIL/ImageChops.py index 8901673..b1f71b5 100644 --- a/lib/python3.7/site-packages/PIL/ImageChops.py +++ b/lib/python3.7/site-packages/PIL/ImageChops.py @@ -54,7 +54,7 @@ def invert(image): def lighter(image1, image2): """ Compares the two images, pixel by pixel, and returns a new image containing - the lighter values. + the lighter values. At least one of the images must have mode "1". .. code-block:: python @@ -70,8 +70,8 @@ def lighter(image1, image2): def darker(image1, image2): """ - Compares the two images, pixel by pixel, and returns a new image - containing the darker values. + Compares the two images, pixel by pixel, and returns a new image containing + the darker values. At least one of the images must have mode "1". .. code-block:: python @@ -88,7 +88,7 @@ def darker(image1, image2): def difference(image1, image2): """ Returns the absolute value of the pixel-by-pixel difference between the two - images. + images. At least one of the images must have mode "1". .. code-block:: python @@ -107,7 +107,8 @@ def multiply(image1, image2): Superimposes two images on top of each other. If you multiply an image with a solid black image, the result is black. If - you multiply with a solid white image, the image is unaffected. + you multiply with a solid white image, the image is unaffected. At least + one of the images must have mode "1". .. code-block:: python @@ -123,7 +124,8 @@ def multiply(image1, image2): def screen(image1, image2): """ - Superimposes two inverted images on top of each other. + Superimposes two inverted images on top of each other. At least one of the + images must have mode "1". .. code-block:: python @@ -141,6 +143,7 @@ def add(image1, image2, scale=1.0, offset=0): """ Adds two images, dividing the result by scale and adding the offset. If omitted, scale defaults to 1.0, and offset to 0.0. + At least one of the images must have mode "1". .. code-block:: python @@ -156,8 +159,9 @@ def add(image1, image2, scale=1.0, offset=0): def subtract(image1, image2, scale=1.0, offset=0): """ - Subtracts two images, dividing the result by scale and adding the - offset. If omitted, scale defaults to 1.0, and offset to 0.0. + Subtracts two images, dividing the result by scale and adding the offset. + If omitted, scale defaults to 1.0, and offset to 0.0. At least one of the + images must have mode "1". .. code-block:: python @@ -172,7 +176,8 @@ def subtract(image1, image2, scale=1.0, offset=0): def add_modulo(image1, image2): - """Add two images, without clipping the result. + """Add two images, without clipping the result. At least one of the images + must have mode "1". .. code-block:: python @@ -187,7 +192,8 @@ def add_modulo(image1, image2): def subtract_modulo(image1, image2): - """Subtract two images, without clipping the result. + """Subtract two images, without clipping the result. At least one of the + images must have mode "1". .. code-block:: python @@ -202,7 +208,8 @@ def subtract_modulo(image1, image2): def logical_and(image1, image2): - """Logical AND between two images. + """Logical AND between two images. At least one of the images must have + mode "1". .. code-block:: python @@ -217,7 +224,8 @@ def logical_and(image1, image2): def logical_or(image1, image2): - """Logical OR between two images. + """Logical OR between two images. At least one of the images must have + mode "1". .. code-block:: python @@ -232,7 +240,8 @@ def logical_or(image1, image2): def logical_xor(image1, image2): - """Logical XOR between two images. + """Logical XOR between two images. At least one of the images must have + mode "1". .. code-block:: python diff --git a/lib/python3.7/site-packages/PIL/ImageCms.py b/lib/python3.7/site-packages/PIL/ImageCms.py index 4b6281f..e8871bb 100644 --- a/lib/python3.7/site-packages/PIL/ImageCms.py +++ b/lib/python3.7/site-packages/PIL/ImageCms.py @@ -647,7 +647,7 @@ def createProfile(colorSpace, colorTemp=-1): if colorSpace == "LAB": try: colorTemp = float(colorTemp) - except: + except (TypeError, ValueError): raise PyCMSError( "Color temperature must be numeric, \"%s\" not valid" % colorTemp) @@ -727,7 +727,7 @@ def getProfileInfo(profile): # add an extra newline to preserve pyCMS compatibility # Python, not C. the white point bits weren't working well, # so skipping. - # // info was description \r\n\r\n copyright \r\n\r\n K007 tag \r\n\r\n whitepoint + # info was description \r\n\r\n copyright \r\n\r\n K007 tag \r\n\r\n whitepoint description = profile.profile.product_description cpright = profile.profile.product_copyright arr = [] diff --git a/lib/python3.7/site-packages/PIL/ImageColor.py b/lib/python3.7/site-packages/PIL/ImageColor.py index 08c00fd..d3b3b00 100644 --- a/lib/python3.7/site-packages/PIL/ImageColor.py +++ b/lib/python3.7/site-packages/PIL/ImageColor.py @@ -87,7 +87,10 @@ def getrgb(color): int((int(m.group(3)) * 255) / 100.0 + 0.5) ) - m = re.match(r"hsl\(\s*(\d+\.?\d*)\s*,\s*(\d+\.?\d*)%\s*,\s*(\d+\.?\d*)%\s*\)$", color) + m = re.match( + r"hsl\(\s*(\d+\.?\d*)\s*,\s*(\d+\.?\d*)%\s*,\s*(\d+\.?\d*)%\s*\)$", + color, + ) if m: from colorsys import hls_to_rgb rgb = hls_to_rgb( @@ -101,7 +104,10 @@ def getrgb(color): int(rgb[2] * 255 + 0.5) ) - m = re.match(r"hs[bv]\(\s*(\d+\.?\d*)\s*,\s*(\d+\.?\d*)%\s*,\s*(\d+\.?\d*)%\s*\)$", color) + m = re.match( + r"hs[bv]\(\s*(\d+\.?\d*)\s*,\s*(\d+\.?\d*)%\s*,\s*(\d+\.?\d*)%\s*\)$", + color, + ) if m: from colorsys import hsv_to_rgb rgb = hsv_to_rgb( diff --git a/lib/python3.7/site-packages/PIL/ImageDraw.py b/lib/python3.7/site-packages/PIL/ImageDraw.py index 6a70def..ac54979 100644 --- a/lib/python3.7/site-packages/PIL/ImageDraw.py +++ b/lib/python3.7/site-packages/PIL/ImageDraw.py @@ -391,8 +391,8 @@ def floodfill(image, xy, value, border=None, thresh=0): pixel. :param thresh: Optional threshold value which specifies a maximum tolerable difference of a pixel value from the 'background' in - order for it to be replaced. Useful for filling regions of non- - homogeneous, but similar, colors. + order for it to be replaced. Useful for filling regions of + non-homogeneous, but similar, colors. """ # based on an implementation by Eric S. Raymond # amended by yo1995 @20180806 @@ -406,7 +406,9 @@ def floodfill(image, xy, value, border=None, thresh=0): except (ValueError, IndexError): return # seed point outside image edge = {(x, y)} - full_edge = set() # use a set to keep record of current and previous edge pixels to reduce memory consumption + # use a set to keep record of current and previous edge pixels + # to reduce memory consumption + full_edge = set() while edge: new_edge = set() for (x, y) in edge: # 4 adjacent method diff --git a/lib/python3.7/site-packages/PIL/ImageFile.py b/lib/python3.7/site-packages/PIL/ImageFile.py index 915557a..bcc9108 100644 --- a/lib/python3.7/site-packages/PIL/ImageFile.py +++ b/lib/python3.7/site-packages/PIL/ImageFile.py @@ -79,6 +79,8 @@ class ImageFile(Image.Image): self._min_frame = 0 + self.custom_mimetype = None + self.tile = None self.readonly = 1 # until we know better @@ -120,7 +122,7 @@ class ImageFile(Image.Image): def get_format_mimetype(self): if self.format is None: return - return Image.MIME.get(self.format.upper()) + return self.custom_mimetype or Image.MIME.get(self.format.upper()) def verify(self): "Check file integrity" diff --git a/lib/python3.7/site-packages/PIL/ImageFilter.py b/lib/python3.7/site-packages/PIL/ImageFilter.py index de99e64..271f93b 100644 --- a/lib/python3.7/site-packages/PIL/ImageFilter.py +++ b/lib/python3.7/site-packages/PIL/ImageFilter.py @@ -197,7 +197,7 @@ class UnsharpMask(MultibandFilter): .. _digital unsharp masking: https://en.wikipedia.org/wiki/Unsharp_masking#Digital_unsharp_masking - """ + """ # noqa: E501 name = "UnsharpMask" def __init__(self, radius=2, percent=150, threshold=3): @@ -467,7 +467,7 @@ class Color3DLUT(MultibandFilter): def __repr__(self): r = [ "{} from {}".format(self.__class__.__name__, - self.table.__class__.__name__), + self.table.__class__.__name__), "size={:d}x{:d}x{:d}".format(*self.size), "channels={:d}".format(self.channels), ] diff --git a/lib/python3.7/site-packages/PIL/ImageFont.py b/lib/python3.7/site-packages/PIL/ImageFont.py index 5384a72..7454b44 100644 --- a/lib/python3.7/site-packages/PIL/ImageFont.py +++ b/lib/python3.7/site-packages/PIL/ImageFont.py @@ -72,7 +72,7 @@ class ImageFont(object): try: fullname = os.path.splitext(filename)[0] + ext image = Image.open(fullname) - except: + except Exception: pass else: if image and image.mode in ("1", "L"): @@ -203,7 +203,7 @@ class FreeTypeFont(object): size=self.size if size is None else size, index=self.index if index is None else index, encoding=self.encoding if encoding is None else encoding, - layout_engine=self.layout_engine if layout_engine is None else layout_engine + layout_engine=layout_engine or self.layout_engine ) diff --git a/lib/python3.7/site-packages/PIL/ImageGrab.py b/lib/python3.7/site-packages/PIL/ImageGrab.py index 712b02c..d0fe76e 100644 --- a/lib/python3.7/site-packages/PIL/ImageGrab.py +++ b/lib/python3.7/site-packages/PIL/ImageGrab.py @@ -54,9 +54,10 @@ def grabclipboard(): fh, filepath = tempfile.mkstemp('.jpg') os.close(fh) commands = [ - "set theFile to (open for access POSIX file \""+filepath+"\" with write permission)", + "set theFile to (open for access POSIX file \"" + + filepath + "\" with write permission)", "try", - "write (the clipboard as JPEG picture) to theFile", + " write (the clipboard as JPEG picture) to theFile", "end try", "close access theFile" ] diff --git a/lib/python3.7/site-packages/PIL/ImageOps.py b/lib/python3.7/site-packages/PIL/ImageOps.py index 9f516ba..058447b 100644 --- a/lib/python3.7/site-packages/PIL/ImageOps.py +++ b/lib/python3.7/site-packages/PIL/ImageOps.py @@ -380,9 +380,10 @@ def fit(image, size, method=Image.NEAREST, bleed=0.0, centering=(0.5, 0.5)): (width, height) tuple. :param method: What resampling method to use. Default is :py:attr:`PIL.Image.NEAREST`. - :param bleed: Remove a border around the outside of the image (from all + :param bleed: Remove a border around the outside of the image from all four edges. The value is a decimal percentage (use 0.01 for one percent). The default value is 0 (no border). + Cannot be greater than or equal to 0.5. :param centering: Control the cropping position. Use (0.5, 0.5) for center cropping (e.g. if cropping the width, take 50% off of the left side, and therefore 50% off the right side). @@ -400,66 +401,53 @@ def fit(image, size, method=Image.NEAREST, bleed=0.0, centering=(0.5, 0.5)): # kevin@cazabon.com # http://www.cazabon.com - # ensure inputs are valid - if not isinstance(centering, list): - centering = [centering[0], centering[1]] + # ensure centering is mutable + centering = list(centering) - if centering[0] > 1.0 or centering[0] < 0.0: - centering[0] = 0.50 - if centering[1] > 1.0 or centering[1] < 0.0: - centering[1] = 0.50 + if not 0.0 <= centering[0] <= 1.0: + centering[0] = 0.5 + if not 0.0 <= centering[1] <= 1.0: + centering[1] = 0.5 - if bleed > 0.49999 or bleed < 0.0: + if not 0.0 <= bleed < 0.5: bleed = 0.0 # calculate the area to use for resizing and cropping, subtracting # the 'bleed' around the edges # number of pixels to trim off on Top and Bottom, Left and Right - bleedPixels = ( - int((float(bleed) * float(image.size[0])) + 0.5), - int((float(bleed) * float(image.size[1])) + 0.5) - ) + bleed_pixels = (bleed * image.size[0], bleed * image.size[1]) - liveArea = (0, 0, image.size[0], image.size[1]) - if bleed > 0.0: - liveArea = ( - bleedPixels[0], bleedPixels[1], image.size[0] - bleedPixels[0] - 1, - image.size[1] - bleedPixels[1] - 1 - ) + live_size = (image.size[0] - bleed_pixels[0] * 2, + image.size[1] - bleed_pixels[1] * 2) - liveSize = (liveArea[2] - liveArea[0], liveArea[3] - liveArea[1]) - - # calculate the aspect ratio of the liveArea - liveAreaAspectRatio = float(liveSize[0])/float(liveSize[1]) + # calculate the aspect ratio of the live_size + live_size_ratio = float(live_size[0]) / live_size[1] # calculate the aspect ratio of the output image - aspectRatio = float(size[0]) / float(size[1]) + output_ratio = float(size[0]) / size[1] # figure out if the sides or top/bottom will be cropped off - if liveAreaAspectRatio >= aspectRatio: - # liveArea is wider than what's needed, crop the sides - cropWidth = int((aspectRatio * float(liveSize[1])) + 0.5) - cropHeight = liveSize[1] + if live_size_ratio >= output_ratio: + # live_size is wider than what's needed, crop the sides + crop_width = output_ratio * live_size[1] + crop_height = live_size[1] else: - # liveArea is taller than what's needed, crop the top and bottom - cropWidth = liveSize[0] - cropHeight = int((float(liveSize[0])/aspectRatio) + 0.5) + # live_size is taller than what's needed, crop the top and bottom + crop_width = live_size[0] + crop_height = live_size[0] / output_ratio # make the crop - leftSide = int(liveArea[0] + (float(liveSize[0]-cropWidth) * centering[0])) - if leftSide < 0: - leftSide = 0 - topSide = int(liveArea[1] + (float(liveSize[1]-cropHeight) * centering[1])) - if topSide < 0: - topSide = 0 + crop_left = bleed_pixels[0] + (live_size[0]-crop_width) * centering[0] + crop_top = bleed_pixels[1] + (live_size[1]-crop_height) * centering[1] - out = image.crop( - (leftSide, topSide, leftSide + cropWidth, topSide + cropHeight) - ) + crop = ( + crop_left, crop_top, + crop_left + crop_width, crop_top + crop_height + ) # resize the image and return it - return out.resize(size, method) + return image.resize(size, method, box=crop) def flip(image): diff --git a/lib/python3.7/site-packages/PIL/ImageQt.py b/lib/python3.7/site-packages/PIL/ImageQt.py index e602613..b747781 100644 --- a/lib/python3.7/site-packages/PIL/ImageQt.py +++ b/lib/python3.7/site-packages/PIL/ImageQt.py @@ -140,7 +140,7 @@ def _toqclass_helper(im): if py3: im = str(im.toUtf8(), "utf-8") else: - im = unicode(im.toUtf8(), "utf-8") + im = unicode(im.toUtf8(), "utf-8") # noqa: F821 if isPath(im): im = Image.open(im) @@ -185,8 +185,8 @@ if qt_is_installed: An PIL image wrapper for Qt. This is a subclass of PyQt's QImage class. - :param im: A PIL Image object, or a file name (given either as Python - string or a PyQt string object). + :param im: A PIL Image object, or a file name (given either as + Python string or a PyQt string object). """ im_data = _toqclass_helper(im) # must keep a reference, or Qt will crash! diff --git a/lib/python3.7/site-packages/PIL/ImageShow.py b/lib/python3.7/site-packages/PIL/ImageShow.py index b50d613..bbd841d 100644 --- a/lib/python3.7/site-packages/PIL/ImageShow.py +++ b/lib/python3.7/site-packages/PIL/ImageShow.py @@ -17,6 +17,8 @@ from __future__ import print_function from PIL import Image import os import sys +import subprocess +import tempfile if sys.version_info.major >= 3: from shlex import quote @@ -128,6 +130,21 @@ elif sys.platform == "darwin": quote(file)) return command + def show_file(self, file, **options): + """Display given file""" + fd, path = tempfile.mkstemp() + with os.fdopen(fd, 'w') as f: + f.write(file) + with open(path, "r") as f: + subprocess.Popen([ + 'im=$(cat);' + 'open -a /Applications/Preview.app $im;' + 'sleep 20;' + 'rm -f $im' + ], shell=True, stdin=f) + os.remove(path) + return 1 + register(MacViewer) else: @@ -148,11 +165,23 @@ else: format = "PNG" options = {'compress_level': 1} + def get_command(self, file, **options): + command = self.get_command_ex(file, **options)[0] + return "(%s %s; rm -f %s)&" % (command, quote(file), quote(file)) + def show_file(self, file, **options): - command, executable = self.get_command_ex(file, **options) - command = "(%s %s; rm -f %s)&" % (command, quote(file), - quote(file)) - os.system(command) + """Display given file""" + fd, path = tempfile.mkstemp() + with os.fdopen(fd, 'w') as f: + f.write(file) + with open(path, "r") as f: + command = self.get_command_ex(file, **options)[0] + subprocess.Popen([ + 'im=$(cat);' + + command+' $im;' + 'rm -f $im' + ], shell=True, stdin=f) + os.remove(path) return 1 # implementations diff --git a/lib/python3.7/site-packages/PIL/ImageTk.py b/lib/python3.7/site-packages/PIL/ImageTk.py index c56f556..cc0c529 100644 --- a/lib/python3.7/site-packages/PIL/ImageTk.py +++ b/lib/python3.7/site-packages/PIL/ImageTk.py @@ -26,15 +26,15 @@ # import sys +from io import BytesIO + +from . import Image if sys.version_info.major > 2: import tkinter else: import Tkinter as tkinter -from . import Image -from io import BytesIO - # -------------------------------------------------------------------- # Check for Tkinter interface hooks @@ -124,7 +124,7 @@ class PhotoImage(object): self.__photo.name = None try: self.__photo.tk.call("image", "delete", name) - except: + except Exception: pass # ignore internal errors def __str__(self): @@ -244,7 +244,7 @@ class BitmapImage(object): self.__photo.name = None try: self.__photo.tk.call("image", "delete", name) - except: + except Exception: pass # ignore internal errors def width(self): diff --git a/lib/python3.7/site-packages/PIL/Jpeg2KImagePlugin.py b/lib/python3.7/site-packages/PIL/Jpeg2KImagePlugin.py index 7659b6b..172162c 100644 --- a/lib/python3.7/site-packages/PIL/Jpeg2KImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/Jpeg2KImagePlugin.py @@ -181,14 +181,14 @@ class Jpeg2KImageFile(ImageFile.ImageFile): try: fd = self.fp.fileno() length = os.fstat(fd).st_size - except: + except Exception: fd = -1 try: pos = self.fp.tell() self.fp.seek(0, 2) length = self.fp.tell() self.fp.seek(pos, 0) - except: + except Exception: length = -1 self.tile = [('jpeg2k', (0, 0) + self.size, 0, @@ -232,6 +232,13 @@ def _save(im, fp, filename): tile_size = info.get('tile_size', None) quality_mode = info.get('quality_mode', 'rates') quality_layers = info.get('quality_layers', None) + if quality_layers is not None and not ( + isinstance(quality_layers, (list, tuple)) and + all([isinstance(quality_layer, (int, float)) + for quality_layer in quality_layers]) + ): + raise ValueError('quality_layers must be a sequence of numbers') + num_resolutions = info.get('num_resolutions', 0) cblk_size = info.get('codeblock_size', None) precinct_size = info.get('precinct_size', None) @@ -243,7 +250,7 @@ def _save(im, fp, filename): if hasattr(fp, "fileno"): try: fd = fp.fileno() - except: + except Exception: fd = -1 im.encoderconfig = ( diff --git a/lib/python3.7/site-packages/PIL/JpegImagePlugin.py b/lib/python3.7/site-packages/PIL/JpegImagePlugin.py index f206818..e43bdea 100644 --- a/lib/python3.7/site-packages/PIL/JpegImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/JpegImagePlugin.py @@ -75,7 +75,7 @@ def APP(self, marker): try: jfif_unit = i8(s[7]) jfif_density = i16(s, 8), i16(s, 10) - except: + except Exception: pass else: if jfif_unit == 1: @@ -107,7 +107,7 @@ def APP(self, marker): # extract Adobe custom properties try: adobe_transform = i8(s[1]) - except: + except Exception: pass else: self.info["adobe_transform"] = adobe_transform @@ -441,7 +441,7 @@ def _fixup_dict(src_dict): try: if len(value) == 1 and not isinstance(value, dict): return value[0] - except: + except Exception: pass return value @@ -512,7 +512,7 @@ def _getmp(self): info = TiffImagePlugin.ImageFileDirectory_v2(head) info.load(file_contents) mp = dict(info) - except: + except Exception: raise SyntaxError("malformed MP Index (unreadable directory)") # it's an error not to have a number of images try: @@ -578,7 +578,7 @@ RAWMODE = { "YCbCr": "YCbCr", } -zigzag_index = (0, 1, 5, 6, 14, 15, 27, 28, +zigzag_index = (0, 1, 5, 6, 14, 15, 27, 28, # noqa: E128 2, 4, 7, 13, 16, 26, 29, 42, 3, 8, 12, 17, 25, 30, 41, 43, 9, 11, 18, 24, 31, 40, 44, 53, diff --git a/lib/python3.7/site-packages/PIL/JpegPresets.py b/lib/python3.7/site-packages/PIL/JpegPresets.py index 5f01f0d..f7a533c 100644 --- a/lib/python3.7/site-packages/PIL/JpegPresets.py +++ b/lib/python3.7/site-packages/PIL/JpegPresets.py @@ -62,11 +62,12 @@ The tables format between im.quantization and quantization in presets differ in You can convert the dict format to the preset format with the `JpegImagePlugin.convert_dict_qtables(dict_qtables)` function. -Libjpeg ref.: https://web.archive.org/web/20120328125543/http://www.jpegcameras.com/libjpeg/libjpeg-3.html +Libjpeg ref.: +https://web.archive.org/web/20120328125543/http://www.jpegcameras.com/libjpeg/libjpeg-3.html """ -presets = { +presets = { # noqa: E128 'web_low': {'subsampling': 2, # "4:2:0" 'quantization': [ [20, 16, 25, 39, 50, 46, 62, 68, diff --git a/lib/python3.7/site-packages/PIL/MicImagePlugin.py b/lib/python3.7/site-packages/PIL/MicImagePlugin.py index 1dbb6a5..cff84d5 100644 --- a/lib/python3.7/site-packages/PIL/MicImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/MicImagePlugin.py @@ -95,9 +95,17 @@ class MicImageFile(TiffImagePlugin.TiffImageFile): self.frame = frame def tell(self): - return self.frame + def _close__fp(self): + try: + if self.__fp != self.fp: + self.__fp.close() + except AttributeError: + pass + finally: + self.__fp = None + # # -------------------------------------------------------------------- diff --git a/lib/python3.7/site-packages/PIL/MpoImagePlugin.py b/lib/python3.7/site-packages/PIL/MpoImagePlugin.py index a1a8d65..7afa3f3 100644 --- a/lib/python3.7/site-packages/PIL/MpoImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/MpoImagePlugin.py @@ -84,6 +84,15 @@ class MpoImageFile(JpegImagePlugin.JpegImageFile): def tell(self): return self.__frame + def _close__fp(self): + try: + if self.__fp != self.fp: + self.__fp.close() + except AttributeError: + pass + finally: + self.__fp = None + # --------------------------------------------------------------------- # Registry stuff diff --git a/lib/python3.7/site-packages/PIL/PalmImagePlugin.py b/lib/python3.7/site-packages/PIL/PalmImagePlugin.py index 7d7b165..e4865b0 100644 --- a/lib/python3.7/site-packages/PIL/PalmImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/PalmImagePlugin.py @@ -12,7 +12,7 @@ from ._binary import o8, o16be as o16b __version__ = "1.0" -_Palm8BitColormapValues = ( +_Palm8BitColormapValues = ( # noqa: E131 (255, 255, 255), (255, 204, 255), (255, 153, 255), (255, 102, 255), (255, 51, 255), (255, 0, 255), (255, 255, 204), (255, 204, 204), (255, 153, 204), (255, 102, 204), (255, 51, 204), (255, 0, 204), diff --git a/lib/python3.7/site-packages/PIL/PcfFontFile.py b/lib/python3.7/site-packages/PIL/PcfFontFile.py index eba85fe..471d664 100644 --- a/lib/python3.7/site-packages/PIL/PcfFontFile.py +++ b/lib/python3.7/site-packages/PIL/PcfFontFile.py @@ -230,7 +230,7 @@ class PcfFontFile(FontFile.FontFile): firstCol, lastCol = i16(fp.read(2)), i16(fp.read(2)) firstRow, lastRow = i16(fp.read(2)), i16(fp.read(2)) - default = i16(fp.read(2)) + i16(fp.read(2)) # default nencoding = (lastCol - firstCol + 1) * (lastRow - firstRow + 1) diff --git a/lib/python3.7/site-packages/PIL/PdfParser.py b/lib/python3.7/site-packages/PIL/PdfParser.py index bcd29db..7216e5b 100644 --- a/lib/python3.7/site-packages/PIL/PdfParser.py +++ b/lib/python3.7/site-packages/PIL/PdfParser.py @@ -373,7 +373,7 @@ def pdf_repr(x): elif isinstance(x, list): return bytes(PdfArray(x)) elif ((py3 and isinstance(x, str)) or - (not py3 and isinstance(x, unicode))): + (not py3 and isinstance(x, unicode))): # noqa: F821 return pdf_repr(encode_text(x)) elif isinstance(x, bytes): # XXX escape more chars? handle binary garbage @@ -386,7 +386,8 @@ def pdf_repr(x): class PdfParser: - """Based on https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf + """Based on + https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf Supports PDF up to 1.4 """ @@ -863,7 +864,8 @@ class PdfParser: raise PdfFormatError( "unrecognized object: " + repr(data[offset:offset+32])) - re_lit_str_token = re.compile(br"(\\[nrtbf()\\])|(\\[0-9]{1,3})|(\\(\r\n|\r|\n))|(\r\n|\r|\n)|(\()|(\))") + re_lit_str_token = re.compile( + br"(\\[nrtbf()\\])|(\\[0-9]{1,3})|(\\(\r\n|\r|\n))|(\r\n|\r|\n)|(\()|(\))") escaped_chars = { b"n": b"\n", b"r": b"\r", diff --git a/lib/python3.7/site-packages/PIL/PngImagePlugin.py b/lib/python3.7/site-packages/PIL/PngImagePlugin.py index 15077fc..f3a2eaf 100644 --- a/lib/python3.7/site-packages/PIL/PngImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/PngImagePlugin.py @@ -296,6 +296,7 @@ class PngStream(ChunkStream): self.im_mode = None self.im_tile = None self.im_palette = None + self.im_custom_mimetype = None self.text_memory = 0 @@ -340,7 +341,7 @@ class PngStream(ChunkStream): self.im_size = i32(s), i32(s[4:]) try: self.im_mode, self.im_rawmode = _MODES[(i8(s[8]), i8(s[9]))] - except: + except Exception: pass if i8(s[12]): self.im_info["interlace"] = 1 @@ -526,6 +527,20 @@ class PngStream(ChunkStream): return s + # APNG chunks + def chunk_acTL(self, pos, length): + s = ImageFile._safe_read(self.fp, length) + self.im_custom_mimetype = 'image/apng' + return s + + def chunk_fcTL(self, pos, length): + s = ImageFile._safe_read(self.fp, length) + return s + + def chunk_fdAT(self, pos, length): + s = ImageFile._safe_read(self.fp, length) + return s + # -------------------------------------------------------------------- # PNG reader @@ -579,8 +594,9 @@ class PngImageFile(ImageFile.ImageFile): self.mode = self.png.im_mode self._size = self.png.im_size self.info = self.png.im_info - self.text = self.png.im_text # experimental + self._text = None self.tile = self.png.im_tile + self.custom_mimetype = self.png.im_custom_mimetype if self.png.im_palette: rawmode, data = self.png.im_palette @@ -588,6 +604,15 @@ class PngImageFile(ImageFile.ImageFile): self.__idat = length # used by load_read() + @property + def text(self): + # experimental + if self._text is None: + # iTxt, tEXt and zTXt chunks may appear at the end of the file + # So load the file to ensure that they are read + self.load() + return self._text + def verify(self): "Verify PNG file" @@ -600,6 +625,8 @@ class PngImageFile(ImageFile.ImageFile): self.png.verify() self.png.close() + if self._exclusive_fp: + self.fp.close() self.fp = None def load_prepare(self): @@ -638,7 +665,24 @@ class PngImageFile(ImageFile.ImageFile): def load_end(self): "internal: finished reading image data" + while True: + self.fp.read(4) # CRC + try: + cid, pos, length = self.png.read() + except (struct.error, SyntaxError): + break + + if cid == b"IEND": + break + + try: + self.png.call(cid, pos, length) + except UnicodeDecodeError: + break + except EOFError: + ImageFile._safe_read(self.fp, length) + self._text = self.png.im_text self.png.close() self.png = None @@ -866,6 +910,6 @@ def getchunks(im, **params): Image.register_open(PngImageFile.format, PngImageFile, _accept) Image.register_save(PngImageFile.format, _save) -Image.register_extension(PngImageFile.format, ".png") +Image.register_extensions(PngImageFile.format, [".png", ".apng"]) Image.register_mime(PngImageFile.format, "image/png") diff --git a/lib/python3.7/site-packages/PIL/PsdImagePlugin.py b/lib/python3.7/site-packages/PIL/PsdImagePlugin.py index 2d64ecd..7658952 100644 --- a/lib/python3.7/site-packages/PIL/PsdImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/PsdImagePlugin.py @@ -92,7 +92,7 @@ class PsdImageFile(ImageFile.ImageFile): # load resources end = self.fp.tell() + size while self.fp.tell() < end: - signature = read(4) + read(4) # signature id = i16(read(2)) name = read(i8(read(1))) if not (len(name) & 1): @@ -207,17 +207,13 @@ def _layerinfo(file): mode = None # unknown # skip over blend flags and extra information - filler = read(12) + read(12) # filler name = "" size = i32(read(4)) combined = 0 if size: length = i32(read(4)) if length: - mask_y = i32(read(4)) - mask_x = i32(read(4)) - mask_h = i32(read(4)) - mask_y - mask_w = i32(read(4)) - mask_x file.seek(length - 16, 1) combined += length + 4 diff --git a/lib/python3.7/site-packages/PIL/PyAccess.py b/lib/python3.7/site-packages/PIL/PyAccess.py index cce2de2..5df1d40 100644 --- a/lib/python3.7/site-packages/PIL/PyAccess.py +++ b/lib/python3.7/site-packages/PIL/PyAccess.py @@ -53,6 +53,8 @@ class PyAccess(object): # Keep pointer to im object to prevent dereferencing. self._im = img.im + if self._im.mode == "P": + self._palette = img.palette # Debugging is polluting test traces, only useful here # when hacking on PyAccess @@ -74,7 +76,18 @@ class PyAccess(object): """ if self.readonly: raise ValueError('Attempt to putpixel a read only image') - (x, y) = self.check_xy(xy) + (x, y) = xy + if x < 0: + x = self.xsize + x + if y < 0: + y = self.ysize + y + (x, y) = self.check_xy((x, y)) + + if self._im.mode == "P" and \ + isinstance(color, (list, tuple)) and len(color) in [3, 4]: + # RGB or RGBA value for a P image + color = self._palette.getcolor(color) + return self.set_pixel(x, y, color) def __getitem__(self, xy): @@ -88,8 +101,12 @@ class PyAccess(object): :returns: a pixel value for single band images, a tuple of pixel values for multiband images. """ - - (x, y) = self.check_xy(xy) + (x, y) = xy + if x < 0: + x = self.xsize + x + if y < 0: + y = self.ysize + y + (x, y) = self.check_xy((x, y)) return self.get_pixel(x, y) putpixel = __setitem__ @@ -205,7 +222,7 @@ class _PyAccessI16_L(PyAccess): except TypeError: color = min(color[0], 65535) - pixel.l = color & 0xFF + pixel.l = color & 0xFF # noqa: E741 pixel.r = color >> 8 @@ -222,10 +239,10 @@ class _PyAccessI16_B(PyAccess): pixel = self.pixels[y][x] try: color = min(color, 65535) - except: + except Exception: color = min(color[0], 65535) - pixel.l = color >> 8 + pixel.l = color >> 8 # noqa: E741 pixel.r = color & 0xFF diff --git a/lib/python3.7/site-packages/PIL/SpiderImagePlugin.py b/lib/python3.7/site-packages/PIL/SpiderImagePlugin.py index 3f57952..4d5aa3f 100644 --- a/lib/python3.7/site-packages/PIL/SpiderImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/SpiderImagePlugin.py @@ -193,6 +193,15 @@ class SpiderImageFile(ImageFile.ImageFile): from PIL import ImageTk return ImageTk.PhotoImage(self.convert2byte(), palette=256) + def _close__fp(self): + try: + if self.__fp != self.fp: + self.__fp.close() + except AttributeError: + pass + finally: + self.__fp = None + # -------------------------------------------------------------------- # Image series @@ -210,7 +219,7 @@ def loadImageSeries(filelist=None): continue try: im = Image.open(img).convert2byte() - except: + except Exception: if not isSpiderImage(img): print(img + " is not a Spider image file") continue diff --git a/lib/python3.7/site-packages/PIL/TarIO.py b/lib/python3.7/site-packages/PIL/TarIO.py index 0e949ff..89957fb 100644 --- a/lib/python3.7/site-packages/PIL/TarIO.py +++ b/lib/python3.7/site-packages/PIL/TarIO.py @@ -14,6 +14,7 @@ # See the README file for information on usage and redistribution. # +import sys from . import ContainerIO @@ -30,11 +31,11 @@ class TarIO(ContainerIO.ContainerIO): :param tarfile: Name of TAR file. :param file: Name of member file. """ - fh = open(tarfile, "rb") + self.fh = open(tarfile, "rb") while True: - s = fh.read(512) + s = self.fh.read(512) if len(s) != 512: raise IOError("unexpected end of tar file") @@ -50,7 +51,21 @@ class TarIO(ContainerIO.ContainerIO): if file == name: break - fh.seek((size + 511) & (~511), 1) + self.fh.seek((size + 511) & (~511), 1) # Open region - ContainerIO.ContainerIO.__init__(self, fh, fh.tell(), size) + ContainerIO.ContainerIO.__init__(self, self.fh, self.fh.tell(), size) + + # Context manager support + def __enter__(self): + return self + + def __exit__(self, *args): + self.close() + + if sys.version_info.major >= 3: + def __del__(self): + self.close() + + def close(self): + self.fh.close() diff --git a/lib/python3.7/site-packages/PIL/TiffImagePlugin.py b/lib/python3.7/site-packages/PIL/TiffImagePlugin.py index 5059a13..a395919 100644 --- a/lib/python3.7/site-packages/PIL/TiffImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/TiffImagePlugin.py @@ -54,6 +54,7 @@ import os import struct import sys import warnings +import distutils.version from .TiffTags import TYPES @@ -284,6 +285,10 @@ def _limit_rational(val, max_val): return n_d[::-1] if inv else n_d +def _libtiff_version(): + return Image.core.libtiff_version.split("\n")[0].split("Version ")[1] + + ## # Wrapper for TIFF IFDs. @@ -541,7 +546,7 @@ class ImageFileDirectory_v2(MutableMapping): def _setitem(self, tag, value, legacy_api): basetypes = (Number, bytes, str) if not py3: - basetypes += unicode, + basetypes += unicode, # noqa: F821 info = TiffTags.lookup(tag) values = [value] if isinstance(value, basetypes) else value @@ -552,26 +557,26 @@ class ImageFileDirectory_v2(MutableMapping): else: self.tagtype[tag] = 7 if all(isinstance(v, IFDRational) for v in values): - self.tagtype[tag] = 5 + self.tagtype[tag] = TiffTags.RATIONAL elif all(isinstance(v, int) for v in values): if all(v < 2 ** 16 for v in values): - self.tagtype[tag] = 3 + self.tagtype[tag] = TiffTags.SHORT else: - self.tagtype[tag] = 4 + self.tagtype[tag] = TiffTags.LONG elif all(isinstance(v, float) for v in values): - self.tagtype[tag] = 12 + self.tagtype[tag] = TiffTags.DOUBLE else: if py3: if all(isinstance(v, str) for v in values): - self.tagtype[tag] = 2 + self.tagtype[tag] = TiffTags.ASCII else: # Never treat data as binary by default on Python 2. - self.tagtype[tag] = 2 + self.tagtype[tag] = TiffTags.ASCII - if self.tagtype[tag] == 7 and py3: + if self.tagtype[tag] == TiffTags.UNDEFINED and py3: values = [value.encode("ascii", 'replace') if isinstance( value, str) else value] - elif self.tagtype[tag] == 5: + elif self.tagtype[tag] == TiffTags.RATIONAL: values = [float(v) if isinstance(v, int) else v for v in values] @@ -587,14 +592,18 @@ class ImageFileDirectory_v2(MutableMapping): if (info.length == 1) or \ (info.length is None and len(values) == 1 and not legacy_api): # Don't mess with the legacy api, since it's frozen. - if legacy_api and self.tagtype[tag] in [5, 10]: # rationals + if legacy_api and self.tagtype[tag] in [ + TiffTags.RATIONAL, + TiffTags.SIGNED_RATIONAL + ]: # rationals values = values, try: dest[tag], = values except ValueError: # We've got a builtin tag with 1 expected entry warnings.warn( - "Metadata Warning, tag %s had too many entries: %s, expected 1" % ( + "Metadata Warning, tag %s had too many entries: " + "%s, expected 1" % ( tag, len(values))) dest[tag] = values[0] @@ -622,13 +631,13 @@ class ImageFileDirectory_v2(MutableMapping): from .TiffTags import TYPES if func.__name__.startswith("load_"): TYPES[idx] = func.__name__[5:].replace("_", " ") - _load_dispatch[idx] = size, func + _load_dispatch[idx] = size, func # noqa: F821 return func return decorator def _register_writer(idx): def decorator(func): - _write_dispatch[idx] = func + _write_dispatch[idx] = func # noqa: F821 return func return decorator @@ -637,19 +646,19 @@ class ImageFileDirectory_v2(MutableMapping): idx, fmt, name = idx_fmt_name TYPES[idx] = name size = struct.calcsize("=" + fmt) - _load_dispatch[idx] = size, lambda self, data, legacy_api=True: ( + _load_dispatch[idx] = size, lambda self, data, legacy_api=True: ( # noqa: F821 self._unpack("{}{}".format(len(data) // size, fmt), data)) - _write_dispatch[idx] = lambda self, *values: ( + _write_dispatch[idx] = lambda self, *values: ( # noqa: F821 b"".join(self._pack(fmt, value) for value in values)) list(map(_register_basic, - [(3, "H", "short"), - (4, "L", "long"), - (6, "b", "signed byte"), - (8, "h", "signed short"), - (9, "l", "signed long"), - (11, "f", "float"), - (12, "d", "double")])) + [(TiffTags.SHORT, "H", "short"), + (TiffTags.LONG, "L", "long"), + (TiffTags.SIGNED_BYTE, "b", "signed byte"), + (TiffTags.SIGNED_SHORT, "h", "signed short"), + (TiffTags.SIGNED_LONG, "l", "signed long"), + (TiffTags.FLOAT, "f", "float"), + (TiffTags.DOUBLE, "d", "double")])) @_register_loader(1, 1) # Basic type, except for the legacy API. def load_byte(self, data, legacy_api=True): @@ -805,7 +814,10 @@ class ImageFileDirectory_v2(MutableMapping): print("- value:", values) # count is sum of lengths for string and arbitrary data - count = len(data) if typ in [2, 7] else len(values) + if typ in [TiffTags.ASCII, TiffTags.UNDEFINED]: + count = len(data) + else: + count = len(values) # figure out if data fits into the entry if len(data) <= 4: entries.append((tag, typ, count, data.ljust(4, b"\0"), b"")) @@ -1347,6 +1359,15 @@ class TiffImageFile(ImageFile.ImageFile): palette = [o8(b // 256) for b in self.tag_v2[COLORMAP]] self.palette = ImagePalette.raw("RGB;L", b"".join(palette)) + def _close__fp(self): + try: + if self.__fp != self.fp: + self.__fp.close() + except AttributeError: + pass + finally: + self.__fp = None + # # -------------------------------------------------------------------- @@ -1412,7 +1433,7 @@ def _save(im, fp, filename): ifd[key] = info.get(key) try: ifd.tagtype[key] = info.tagtype[key] - except: + except Exception: pass # might not be an IFD, Might not have populated type # additions written by Greg Couch, gregc@cgl.ucsf.edu @@ -1499,14 +1520,19 @@ def _save(im, fp, filename): getattr(im, 'tag_v2', {}).items(), legacy_ifd.items()): # Libtiff can only process certain core items without adding - # them to the custom dictionary. It will segfault if it attempts - # to add a custom tag without the dictionary entry - # - # UNDONE -- add code for the custom dictionary + # them to the custom dictionary. + # Support for custom items has only been been added + # for int, float, unicode, string and byte values if tag not in TiffTags.LIBTIFF_CORE: - continue + if TiffTags.lookup(tag).type == TiffTags.UNDEFINED: + continue + if (distutils.version.StrictVersion(_libtiff_version()) < + distutils.version.StrictVersion("4.0")) \ + or not (isinstance(value, (int, float, str, bytes)) or + (not py3 and isinstance(value, unicode))): # noqa: F821 + continue if tag not in atts and tag not in blocklist: - if isinstance(value, str if py3 else unicode): + if isinstance(value, str if py3 else unicode): # noqa: F821 atts[tag] = value.encode('ascii', 'replace') + b"\0" elif isinstance(value, IFDRational): atts[tag] = float(value) @@ -1784,7 +1810,7 @@ class AppendingTiffWriter: # local (not referenced with another offset) self.rewriteLastShortToLong(offset) self.f.seek(-10, os.SEEK_CUR) - self.writeShort(4) # rewrite the type to LONG + self.writeShort(TiffTags.LONG) # rewrite the type to LONG self.f.seek(8, os.SEEK_CUR) elif isShort: self.rewriteLastShort(offset) diff --git a/lib/python3.7/site-packages/PIL/TiffTags.py b/lib/python3.7/site-packages/PIL/TiffTags.py index c1e14af..3e02915 100644 --- a/lib/python3.7/site-packages/PIL/TiffTags.py +++ b/lib/python3.7/site-packages/PIL/TiffTags.py @@ -29,7 +29,10 @@ class TagInfo(namedtuple("_TagInfo", "value name type length enum")): cls, value, name, type, length, enum or {}) def cvt_enum(self, value): - return self.enum.get(value, value) + # Using get will call hash(value), which can be expensive + # for some types (e.g. Fraction). Since self.enum is rarely + # used, it's usually better to test it first. + return self.enum.get(value, value) if self.enum else value def lookup(tag): @@ -61,8 +64,12 @@ ASCII = 2 SHORT = 3 LONG = 4 RATIONAL = 5 +SIGNED_BYTE = 6 UNDEFINED = 7 +SIGNED_SHORT = 8 +SIGNED_LONG = 9 SIGNED_RATIONAL = 10 +FLOAT = 11 DOUBLE = 12 TAGS_V2 = { @@ -425,6 +432,7 @@ TYPES = {} # some of these are not in our TAGS_V2 dict and were included from tiff.h +# This list also exists in encode.c LIBTIFF_CORE = {255, 256, 257, 258, 259, 262, 263, 266, 274, 277, 278, 280, 281, 340, 341, 282, 283, 284, 286, 287, 296, 297, 321, 320, 338, 32995, 322, 323, 32998, diff --git a/lib/python3.7/site-packages/PIL/WebPImagePlugin.py b/lib/python3.7/site-packages/PIL/WebPImagePlugin.py index e6485c2..212e6b4 100644 --- a/lib/python3.7/site-packages/PIL/WebPImagePlugin.py +++ b/lib/python3.7/site-packages/PIL/WebPImagePlugin.py @@ -2,7 +2,7 @@ from . import Image, ImageFile try: from . import _webp SUPPORTED = True -except ImportError as e: +except ImportError: SUPPORTED = False from io import BytesIO @@ -32,7 +32,8 @@ def _accept(prefix): if is_riff_file_format and is_webp_file and is_valid_vp8_mode: if not SUPPORTED: - return "image file could not be identified because WEBP support not installed" + return "image file could not be identified " \ + "because WEBP support not installed" return True @@ -163,7 +164,7 @@ class WebPImageFile(ImageFile.ImageFile): self.__loaded = self.__logical_frame # Set tile - if self.fp: + if self.fp and self._exclusive_fp: self.fp.close() self.fp = BytesIO(data) self.tile = [("raw", (0, 0) + self.size, 0, self.rawmode)] @@ -190,7 +191,19 @@ def _save_all(im, fp, filename): _save(im, fp, filename) return - background = encoderinfo.get("background", (0, 0, 0, 0)) + background = (0, 0, 0, 0) + if "background" in encoderinfo: + background = encoderinfo["background"] + elif "background" in im.info: + background = im.info["background"] + if isinstance(background, int): + # GifImagePlugin stores a global color table index in + # info["background"]. So it must be converted to an RGBA value + palette = im.getpalette() + if palette: + r, g, b = palette[background*3:(background+1)*3] + background = (r, g, b, 0) + duration = im.encoderinfo.get("duration", 0) loop = im.encoderinfo.get("loop", 0) minimize_size = im.encoderinfo.get("minimize_size", False) @@ -255,7 +268,8 @@ def _save_all(im, fp, filename): rawmode = ims.mode if ims.mode not in _VALID_WEBP_MODES: alpha = 'A' in ims.mode or 'a' in ims.mode \ - or (ims.mode == 'P' and 'A' in ims.im.getpalettemode()) + or (ims.mode == 'P' and + 'A' in ims.im.getpalettemode()) rawmode = 'RGBA' if alpha else 'RGB' frame = ims.convert(rawmode) diff --git a/lib/python3.7/site-packages/PIL/_imaging.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_imaging.cpython-37m-darwin.so index 6c5b961..7289bd4 100644 Binary files a/lib/python3.7/site-packages/PIL/_imaging.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_imaging.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/_imagingcms.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_imagingcms.cpython-37m-darwin.so index d663096..67747f7 100644 Binary files a/lib/python3.7/site-packages/PIL/_imagingcms.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_imagingcms.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/_imagingft.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_imagingft.cpython-37m-darwin.so index 4ce4d68..8a0340a 100644 Binary files a/lib/python3.7/site-packages/PIL/_imagingft.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_imagingft.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/_imagingmath.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_imagingmath.cpython-37m-darwin.so index e29ed4d..2b1eb3b 100644 Binary files a/lib/python3.7/site-packages/PIL/_imagingmath.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_imagingmath.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/_imagingmorph.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_imagingmorph.cpython-37m-darwin.so index f71b1a6..de89e0b 100644 Binary files a/lib/python3.7/site-packages/PIL/_imagingmorph.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_imagingmorph.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/_imagingtk.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_imagingtk.cpython-37m-darwin.so index 78fda2b..d0d760a 100644 Binary files a/lib/python3.7/site-packages/PIL/_imagingtk.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_imagingtk.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/_util.py b/lib/python3.7/site-packages/PIL/_util.py index e6989d6..5828c2c 100644 --- a/lib/python3.7/site-packages/PIL/_util.py +++ b/lib/python3.7/site-packages/PIL/_util.py @@ -11,10 +11,10 @@ if py3: return isinstance(f, (bytes, str)) else: def isStringType(t): - return isinstance(t, basestring) + return isinstance(t, basestring) # noqa: F821 def isPath(f): - return isinstance(f, basestring) + return isinstance(f, basestring) # noqa: F821 # Checks if an object is a string, and that it points to a directory. diff --git a/lib/python3.7/site-packages/PIL/_version.py b/lib/python3.7/site-packages/PIL/_version.py index b5e4f0d..335a049 100644 --- a/lib/python3.7/site-packages/PIL/_version.py +++ b/lib/python3.7/site-packages/PIL/_version.py @@ -1,2 +1,2 @@ # Master version for Pillow -__version__ = '5.3.0' +__version__ = '5.4.1' diff --git a/lib/python3.7/site-packages/PIL/_webp.cpython-37m-darwin.so b/lib/python3.7/site-packages/PIL/_webp.cpython-37m-darwin.so index 821783e..7c77d17 100644 Binary files a/lib/python3.7/site-packages/PIL/_webp.cpython-37m-darwin.so and b/lib/python3.7/site-packages/PIL/_webp.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/PIL/features.py b/lib/python3.7/site-packages/PIL/features.py index 9926445..6530038 100644 --- a/lib/python3.7/site-packages/PIL/features.py +++ b/lib/python3.7/site-packages/PIL/features.py @@ -51,7 +51,8 @@ features = { "webp_anim": ("PIL._webp", 'HAVE_WEBPANIM'), "webp_mux": ("PIL._webp", 'HAVE_WEBPMUX'), "transp_webp": ("PIL._webp", "HAVE_TRANSPARENCY"), - "raqm": ("PIL._imagingft", "HAVE_RAQM") + "raqm": ("PIL._imagingft", "HAVE_RAQM"), + "libjpeg_turbo": ("PIL._imaging", "HAVE_LIBJPEGTURBO"), } diff --git a/lib/python3.7/site-packages/Pillow-5.3.0.dist-info/INSTALLER b/lib/python3.7/site-packages/Pillow-5.4.1.dist-info/INSTALLER similarity index 100% rename from lib/python3.7/site-packages/Pillow-5.3.0.dist-info/INSTALLER rename to lib/python3.7/site-packages/Pillow-5.4.1.dist-info/INSTALLER diff --git a/lib/python3.7/site-packages/Pillow-5.3.0.dist-info/LICENSE.txt b/lib/python3.7/site-packages/Pillow-5.4.1.dist-info/LICENSE similarity index 100% rename from lib/python3.7/site-packages/Pillow-5.3.0.dist-info/LICENSE.txt rename to lib/python3.7/site-packages/Pillow-5.4.1.dist-info/LICENSE diff --git a/lib/python3.7/site-packages/Pillow-5.3.0.dist-info/METADATA b/lib/python3.7/site-packages/Pillow-5.4.1.dist-info/METADATA similarity index 89% rename from lib/python3.7/site-packages/Pillow-5.3.0.dist-info/METADATA rename to lib/python3.7/site-packages/Pillow-5.4.1.dist-info/METADATA index 660fa41..72a05f7 100644 --- a/lib/python3.7/site-packages/Pillow-5.3.0.dist-info/METADATA +++ b/lib/python3.7/site-packages/Pillow-5.4.1.dist-info/METADATA @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: Pillow -Version: 5.3.0 +Version: 5.4.1 Summary: Python Imaging Library (Fork) Home-page: http://python-pillow.org Author: Alex Clark (Fork Author) @@ -44,7 +44,7 @@ Pillow is the friendly PIL fork by `Alex Clark and Contributors =0.7) ; extra == 'cssselect' Provides-Extra: html5 -Provides-Extra: cssselect -Requires-Dist: cssselect (>=0.7); extra == 'cssselect' -Provides-Extra: html5 -Requires-Dist: html5lib; extra == 'html5' +Requires-Dist: html5lib ; extra == 'html5' Provides-Extra: htmlsoup -Requires-Dist: BeautifulSoup4; extra == 'htmlsoup' +Requires-Dist: BeautifulSoup4 ; extra == 'htmlsoup' Provides-Extra: source -Requires-Dist: Cython (>=0.26.1); extra == 'source' +Requires-Dist: Cython (>=0.29.1) ; extra == 'source' lxml is a Pythonic, mature binding for the libxml2 and libxslt libraries. It provides safe and convenient access to these libraries using the ElementTree @@ -64,21 +58,38 @@ an appropriate version of Cython installed. After an official release of a new stable series, bug fixes may become available at -https://github.com/lxml/lxml/tree/lxml-4.2 . -Running ``easy_install lxml==4.2bugfix`` will install +https://github.com/lxml/lxml/tree/lxml-4.3 . +Running ``easy_install lxml==4.3bugfix`` will install the unreleased branch state from -https://github.com/lxml/lxml/tarball/lxml-4.2#egg=lxml-4.2bugfix +https://github.com/lxml/lxml/tarball/lxml-4.3#egg=lxml-4.3bugfix as soon as a maintenance branch has been established. Note that this requires Cython to be installed at an appropriate version for the build. -4.2.5 (2018-09-09) +4.3.0 (2019-01-04) ================== -Bugs fixed ----------- +Features added +-------------- -* Javascript URLs that used URL escaping were not removed by the HTML cleaner. - Security problem found by Omar Eissa. +* The module ``lxml.sax`` is compiled using Cython in order to speed it up. + +* GH#267: ``lxml.sax.ElementTreeProducer`` now preserves the namespace prefixes. + If two prefixes point to the same URI, the first prefix in alphabetical order + is used. Patch by Lennart Regebro. + +* Updated ISO-Schematron implementation to 2013 version (now MIT licensed) + and the corresponding schema to the 2016 version (with optional "properties"). + +Other changes +------------- + +* GH#270, GH#271: Support for Python 2.6 and 3.3 was removed. + Patch by hugovk. + +* The minimum dependency versions were raised to libxml2 2.9.2 and libxslt 1.1.27, + which were released in 2014 and 2012 respectively. + +* Built with Cython 0.29.2. diff --git a/lib/python3.7/site-packages/lxml-4.2.5.dist-info/RECORD b/lib/python3.7/site-packages/lxml-4.3.0.dist-info/RECORD similarity index 77% rename from lib/python3.7/site-packages/lxml-4.2.5.dist-info/RECORD rename to lib/python3.7/site-packages/lxml-4.3.0.dist-info/RECORD index a8080f4..59fb30b 100644 --- a/lib/python3.7/site-packages/lxml-4.2.5.dist-info/RECORD +++ b/lib/python3.7/site-packages/lxml-4.3.0.dist-info/RECORD @@ -1,8 +1,9 @@ -lxml-4.2.5.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 -lxml-4.2.5.dist-info/METADATA,sha256=K9LGtfui5hNpzhVmxz33gNd4bDaPC9n3wywI68WV_bA,3143 -lxml-4.2.5.dist-info/RECORD,, -lxml-4.2.5.dist-info/WHEEL,sha256=VUgiLi0_ag0bBLL7DPKGck7Ptb2qpMkh_t8-WZdf87Y,249 -lxml-4.2.5.dist-info/top_level.txt,sha256=NjD988wqaKq512nshNdLt-uDxsjkp4Bh51m6N-dhUrk,5 +lxml-4.3.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +lxml-4.3.0.dist-info/LICENSES.txt,sha256=QdSd1AaqDhVIptXyGjDWv2OLPNlutyid00jYPtLkA5I,1514 +lxml-4.3.0.dist-info/METADATA,sha256=xL8_WXsFYJ5khevrMu0IjlhWxzgCBpa2ungUZfuPsF8,3550 +lxml-4.3.0.dist-info/RECORD,, +lxml-4.3.0.dist-info/WHEEL,sha256=dZ-5_wi424-cXKWlBPHfX3GR9ygTGUuzMFZB3m3t2_w,249 +lxml-4.3.0.dist-info/top_level.txt,sha256=NjD988wqaKq512nshNdLt-uDxsjkp4Bh51m6N-dhUrk,5 lxml/ElementInclude.py,sha256=Imj9ors3Rz5yoAoOB7J792WzIrM1AiAtepMV0FCaBnk,7668 lxml/__init__.py,sha256=lYLRn8M0_xdnN2bhEnZ2L7mlY5zM3gwz1kgLILLxC34,551 lxml/__pycache__/ElementInclude.cpython-37.pyc,, @@ -14,17 +15,17 @@ lxml/__pycache__/doctestcompare.cpython-37.pyc,, lxml/__pycache__/pyclasslookup.cpython-37.pyc,, lxml/__pycache__/sax.cpython-37.pyc,, lxml/__pycache__/usedoctest.cpython-37.pyc,, -lxml/_elementpath.cpython-37m-darwin.so,sha256=2h5tnZ0K3ZpjrGufJMYUJ_SXL5BTlfffnROFhf7UPSs,434936 -lxml/_elementpath.py,sha256=RkBTByehAB4cEC6OSB9wkn5b2dBNiVzvYT_YBbJ4_gk,10121 -lxml/builder.cpython-37m-darwin.so,sha256=6lR4nvzpAPWRn1IBzp1jKB9wXLA0f2_0hAgv2jJigEc,206612 -lxml/builder.py,sha256=EbL_AVkQ3QUZBC9yTQQISAMJnZFVHVKoWcMroqlDRfw,7907 +lxml/_elementpath.cpython-37m-darwin.so,sha256=eaK6beoRI3XMrG4FVofOHg1LmPBgU6HVH_LX33FGUXc,446808 +lxml/_elementpath.py,sha256=Hq7zWPwh53ynnKO1US9-Q8NWEK0aXBd7siIeMoNN6Os,10189 +lxml/builder.cpython-37m-darwin.so,sha256=5tn035njP7Oxh-STnbJd9ZzA9Ujp6AWKm9acngohetU,218484 +lxml/builder.py,sha256=R5WsHI0bCOHYehskKXENvBkuarviL5rNJsmnh6cZGUA,7975 lxml/cssselect.py,sha256=ADTqox2BUhZI_28K26Dnd-rPqvwL1A7KpXwDetXZLfA,3366 -lxml/doctestcompare.py,sha256=c1_02F7p5KE9epBcOJD0OA81v7ANrDyEr2P6A2irB5A,18387 -lxml/etree.cpython-37m-darwin.so,sha256=tik18T49adSYy_0CxKArsoLLDK3dWF_Kx6Wa2orhe6I,11788796 -lxml/etree.h,sha256=tVxNPlBEYitAxLTZi89zq_kT6T2__8DNeT7sD0kzO-U,8554 -lxml/etree_api.h,sha256=ITHOKhwTX8p7ceIuMdOIm68bdL0xS_u2wfmPswRfwu4,17831 +lxml/doctestcompare.py,sha256=dAjqNzMGJuDsxY0xOXwOWzEsq7gSfQf-6uuxZZwaNXM,18339 +lxml/etree.cpython-37m-darwin.so,sha256=qPVUqkQGubFy64g9vknR5ZW1lQfzEd-gnA0OEdsV_Z0,11815816 +lxml/etree.h,sha256=TWrERq5QkJNhXNpaJ78yssgHB1B0FDvH6gdMOxvb6vE,8554 +lxml/etree_api.h,sha256=uJFOvNEC6UeeWsw2aeeIl9Inp4eBPZSibZrZ92_DLfQ,17466 lxml/html/ElementSoup.py,sha256=9NQNksJmEr0M2DqzaKhXWdALLo0btwVwjgTHnkfGfvk,319 -lxml/html/__init__.py,sha256=Zgx7NUBLlVN1wBlmHi83ScQu2_HJK78QU6-M2MmbC0Q,64889 +lxml/html/__init__.py,sha256=QtfpGNkR5fMkA1k5bh0RomQGceoyB3atRxiPxy-bkCw,64805 lxml/html/__pycache__/ElementSoup.cpython-37.pyc,, lxml/html/__pycache__/__init__.cpython-37.pyc,, lxml/html/__pycache__/_diffcommand.cpython-37.pyc,, @@ -40,13 +41,13 @@ lxml/html/__pycache__/soupparser.cpython-37.pyc,, lxml/html/__pycache__/usedoctest.cpython-37.pyc,, lxml/html/_diffcommand.py,sha256=aqbvEjiYe9WdfnQp62Ecv8MNwS3utErHwER-AsmNAYA,2135 lxml/html/_html5builder.py,sha256=cASxN0Tks3_vqCA_sXa1oCx_McyRL6VpuRLA1T-B58o,3246 -lxml/html/_setmixin.py,sha256=Rt1Pb_GFWp_5BD5GioZBaUPUZbVwPruDPJJMR7O7ntE,1111 +lxml/html/_setmixin.py,sha256=uVCgBUC4SJ7N9GotmlKHrhH7R4Kk7wGU3u1WmEJKGeM,1184 lxml/html/builder.py,sha256=1NuLqKPSaat75wCGufVuv1jIeBLuQCWsJVA_T2XjjUI,4310 -lxml/html/clean.cpython-37m-darwin.so,sha256=4dkAl775mcBYgWgmVX7rI3qK24xfQR4r_hBNZe46fGU,600996 -lxml/html/clean.py,sha256=lMwK9oOo8V9K3i-AMnKXkbbczPniDNm3vrgLFaTw9Ds,26427 +lxml/html/clean.cpython-37m-darwin.so,sha256=eNJm_sjmuOG7TQyDglHMf08EafHAGBd7KnbKaPJcZtI,644540 +lxml/html/clean.py,sha256=7LoNhrkhE25j3wgjEVBgONk38TlIwUlaj44B0wVX-24,26422 lxml/html/defs.py,sha256=wrXnX7XKZJNNUlX4upOnTVxVeb8uYW3ufFHaHAWdEJY,4173 -lxml/html/diff.cpython-37m-darwin.so,sha256=KRubg3X4lcDGDgcmm4WE0uejD8kIwRMXnRGd7t66sc8,791292 -lxml/html/diff.py,sha256=yI8SDylLrEVgwvi0tScxXtWp18OAZZx4Pmi7XdXYxyI,30501 +lxml/html/diff.cpython-37m-darwin.so,sha256=4Jho_bWx3wuRoEna2Xsap7L-veXQZUdbh0JIBBX1itM,866532 +lxml/html/diff.py,sha256=F1A1vYO3dQdYfGDkI46zj5GN6UzaGMQt7ezqV5i324Q,30553 lxml/html/formfill.py,sha256=9lnv7BnrQS0HOBY8ToeP1408xMN1wnltpsY-0CTGBpQ,9689 lxml/html/html5parser.py,sha256=dnyC4cqHxywjZSzk0mu2L7THTZjxhg4yF4pncjusa_w,8634 lxml/html/soupparser.py,sha256=tfdraMayPbMBCd2kGxUoTvNkhKUclfP3LmV9R85WKI4,10203 @@ -57,7 +58,7 @@ lxml/includes/__pycache__/__init__.cpython-37.pyc,, lxml/includes/c14n.pxd,sha256=pGf910mVH9IdBb7r_aE-J59axIQcqFH4Sx_Tm0PA1m0,1123 lxml/includes/config.pxd,sha256=H6Mrl8It21hzRI2hzMId9W48QqkYYkoLT4dniLNmdTw,96 lxml/includes/dtdvalid.pxd,sha256=Rf2vRBbM4O1AOiIsUk_5M7pV3Dz309sS7Ccd2zGFHT0,671 -lxml/includes/etree_defs.h,sha256=HGkAmwH4kDj9QQOg0Alw1jRuKkCmVg4yeiTz93gNjrQ,15762 +lxml/includes/etree_defs.h,sha256=nQXhLCcSoGpFhsCbhI2cTSJR4mIZyGAPzFt641uAzTU,15559 lxml/includes/etreepublic.pxd,sha256=3cdjIVlfkeZWYUav4y_T2uHwAo8yUCTlCvNLEvsZ_aI,10122 lxml/includes/htmlparser.pxd,sha256=Va2qbs5zVokERn57HbDY__CiBQOoCS4uI9wEfCnT6zk,2868 lxml/includes/libexslt/exslt.h,sha256=Z91WbHADa4o5-kJufstf6Y100qBTMqBiK1aZsxcp_Ao,3018 @@ -75,7 +76,7 @@ lxml/includes/libxml/debugXML.h,sha256=eatflryQfcmuAgmyz_f3JoSpTmvDA26mrcUjd7vwS lxml/includes/libxml/dict.h,sha256=o36P53gHvahFTU4K-RMkeqy5oJzXza_akJ069CmdorE,1955 lxml/includes/libxml/encoding.h,sha256=bzmHUnU-pUjQIqMOqrEml5KapMOmZ8MeoNO5VIro0ck,8507 lxml/includes/libxml/entities.h,sha256=uJ8I3voqfwMEw8MQJveLtS0mOanjzzREreKrSs8_018,4712 -lxml/includes/libxml/globals.h,sha256=CHp7u46nJ-qE4N4tFVS6xRXnQgrnqEvKA0u2744F34M,14694 +lxml/includes/libxml/globals.h,sha256=bjkOtarZpUFFa5QYE5gN3t0RtRIsXHQQJg8ulxQHAKQ,14670 lxml/includes/libxml/hash.h,sha256=81Gch4yaE4oXlKhM-jwPpVkf7zig2kH5b-wdrCkINpY,6603 lxml/includes/libxml/list.h,sha256=b7h42wGsDQTVWXsRutjNe1n00_zXfDIXr-iBOHvSThg,3348 lxml/includes/libxml/nanoftp.h,sha256=HOW15FcLYD7A7hvdcqz3JxGYVBraqjiTodtx-pBqQ5g,3758 @@ -86,7 +87,7 @@ lxml/includes/libxml/relaxng.h,sha256=D1ufdqizDSPx8wOL_ZsjuIl--nK52cWMiZwIdEIbhS lxml/includes/libxml/schemasInternals.h,sha256=I1VSv5fO7wDHdgSoR2xrcUSGL1UEeOgabpnZT5wXayo,26243 lxml/includes/libxml/schematron.h,sha256=lNOe9oFbhBqk1GVv4nJ4eZR3tieJVuw-gqbrmPtG3K4,4371 lxml/includes/libxml/threads.h,sha256=4OopyFEmDIicmsj7cYzzlpEswbXSiHHM5LJakZ9Vw5Y,1958 -lxml/includes/libxml/tree.h,sha256=80Hw_WvLrk4P3yruakmhoIzMXn0RLtsikDIGUk2n8Tc,38105 +lxml/includes/libxml/tree.h,sha256=Vbh95HbDdJ8MmJyt-y2fDUMBl8unhC2xau7Rw3Ypkxk,38107 lxml/includes/libxml/uri.h,sha256=nGU1MVe2zr7e3jReDYKCMPQkTkQRN-iNlLewkpP9cLo,2664 lxml/includes/libxml/valid.h,sha256=__oCp9iK1nJc7s2iRZqtz8iHu6--9-XI_MWLXIBq_C0,13622 lxml/includes/libxml/xinclude.h,sha256=iL_sqfaWIhThheHWBbEUQt59_sd-jnExhxaYeXxInqk,2967 @@ -94,7 +95,7 @@ lxml/includes/libxml/xlink.h,sha256=hV-cvCxIJ_F1VdWcMYZ3w2jkGwWyLc9SZ8PdnUZxYNs, lxml/includes/libxml/xmlIO.h,sha256=-5MYRiCCuO81Y23ldZJU7Uh_my3U7yyg9rMfahcVans,10611 lxml/includes/libxml/xmlautomata.h,sha256=rIJxLWBGZrfkFYDXdJZBoAhygp93vFBO_WI6nUCxBN4,3956 lxml/includes/libxml/xmlerror.h,sha256=I7xskOqrTkctmlL76j2-_VMmMB_RPcXTglE1jHRXa5g,36808 -lxml/includes/libxml/xmlexports.h,sha256=xKNFpSDT-d53xTWeyClzXtsFusNiyo9l4Iwo4JNc7MM,3920 +lxml/includes/libxml/xmlexports.h,sha256=STps2gtHl-dNVoWDBdsg1liYi88JYJYTjBp30KEeOYc,3933 lxml/includes/libxml/xmlmemory.h,sha256=Z6y0IQCIKXfVnYOPiGoFwc5Hq4rUdZ5AJwKJeav0TNw,5945 lxml/includes/libxml/xmlmodule.h,sha256=c5vXusZj46FsM9UPHGt8g9gdPhTVOH1rJEFf2pJ8K4c,1170 lxml/includes/libxml/xmlreader.h,sha256=mAAVz-ZYrOt56fzLds-ytusW7UqEGS5L9BGi5kzpTv4,12607 @@ -104,7 +105,7 @@ lxml/includes/libxml/xmlschemas.h,sha256=mvK9-OmM-FxfAPSpfkte4R-EWdkwvY6WFX6JmUe lxml/includes/libxml/xmlschemastypes.h,sha256=alMLzZOds02Ksbv7K86owr0_IXjFPQ2Kk99rGhniZPE,4841 lxml/includes/libxml/xmlstring.h,sha256=P_40FyEE40e_8h8Tlk9TSNze1zrJygFgsxkFydPnnPs,5511 lxml/includes/libxml/xmlunicode.h,sha256=TpTZ8Bf313Rs9m-ww1cBCHwvW-uHj9tQ125iQfaDorU,9993 -lxml/includes/libxml/xmlversion.h,sha256=pSoknZ25YKMWwkJ8028-8KZo8KboB20LDexdwmUgl9Y,8092 +lxml/includes/libxml/xmlversion.h,sha256=QfvdigZn28-v7eoo5cout_QssMYibltZVz-FiWsMp34,8092 lxml/includes/libxml/xmlwriter.h,sha256=ddjdRh9PBH-FynmNgjkRg1JFBRzlZBPyyh7FX3JX1lY,21265 lxml/includes/libxml/xpath.h,sha256=zo45KZIebdrOgK-Zu7kWQMm9yAs4pt_5b5QGnDApMc0,16398 lxml/includes/libxml/xpathInternals.h,sha256=EWeEX1yCVHsUUeDxxOe-4jO25LBEDoM564CoPc1YNGU,19353 @@ -130,7 +131,7 @@ lxml/includes/libxslt/xsltconfig.h,sha256=C7HE2Bfyf43jlS-z7L8emxkMdYJ5TVQQc8aCjf lxml/includes/libxslt/xsltexports.h,sha256=QLg1cfT3LW3m1iQnduDbstdg88cIBlPkaxMx3hlB7vE,3426 lxml/includes/libxslt/xsltlocale.h,sha256=yOkJGQNiD39fwBYus1TpgSmb1mEJstXcHx3O_Q03d_w,1549 lxml/includes/libxslt/xsltutils.h,sha256=D2Gqop4cieJiOsQtLWTJezGea9kONcUFxeykLjGRI_E,8297 -lxml/includes/lxml-version.h,sha256=is1wNkHY9Z1i6w0Rxj0ANHD7B1zz6a_5kkdhR3NhL-o,71 +lxml/includes/lxml-version.h,sha256=ksjumcbYtPg9oZibhB0FPK8kjiY2L-XApmMxf0p1ouY,71 lxml/includes/relaxng.pxd,sha256=12yapjqDZLF_HTlcuSXSoQpPGK1NU7fj7gzS1EF8kZw,2669 lxml/includes/schematron.pxd,sha256=5_PUpLHTzzYZ_d-8d2OjKLdwtLIdOm7C20HFUAX8hD4,1640 lxml/includes/tree.pxd,sha256=qiuNwXRKAsV0xJoSNBmKc7RclDn_5GI93MCHes2xbW8,19952 @@ -141,20 +142,21 @@ lxml/includes/xmlparser.pxd,sha256=v-G3Y11eR4C1e2ImWLmGZpuTA90Y9N_uy-8H0-zwJY8,1 lxml/includes/xmlschema.pxd,sha256=yYQFrIKAQ_feenENV24X2AZyBIYGBltRDm9qB7CYMww,1696 lxml/includes/xpath.pxd,sha256=tKYAcwpbSRq8qrsZ2ISVYvEaLnCV9GadNC5o_f8Ua_g,5794 lxml/includes/xslt.pxd,sha256=qBU-0dLhIMQFv58I4q1XkBq9QJpJzKEAK9qBFPXBj_g,8341 -lxml/isoschematron/__init__.py,sha256=FzrpeBJets_w6BH3MW1VbwTfThS35XL_Hk0bGr-NcOQ,12408 +lxml/isoschematron/__init__.py,sha256=NUoI0bb87VB2XePzFcMtwUasrUAQACfb3Z9dPaMz6Fs,12399 lxml/isoschematron/__pycache__/__init__.cpython-37.pyc,, -lxml/isoschematron/resources/rng/iso-schematron.rng,sha256=cFvf7ObbuHh52exAqMlTBlGu-5iuOH2pE0WERkdC1Tk,15572 +lxml/isoschematron/resources/rng/iso-schematron.rng,sha256=VsWxPyi3iViJDDbjJJw0wWkEHkLrz9zoCA8zJLor9N4,18337 lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl,sha256=ObebsB8Wt-d3uIA_U5NU85TpnQ3PxPX38TdOAqosMac,3172 lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl,sha256=QweRrIIM-zFcgg98GXA2CaWfIbgVE0XKEeYSfvv67A0,4563 -lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl,sha256=0SdZY7oqbDgbuIjB9NpUHLXbMmFHVkxIEUZwTa3iRMM,10917 +lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl,sha256=xSZ_Ekq_I-62ZpiE5AqYYHwFW_qh855zt9V4_s7rbkY,11703 lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl,sha256=x42QJ-dxQ1waPzydsCoQnp2Xj15y53nW43O7BuoDRHk,39957 lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl,sha256=Tr9BnO6pzjVWwhqJfm10UlvAy95EgfSCz2iMlrVGT6Q,2015 lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl,sha256=ue8q_88X4e_jsJizo31GRNBxNhdxkEE9fY20oq0Iqwk,71764 lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl,sha256=BBAdsVSi5zAzeGepuN6gS1saQINDqITXKplmmj4dTWg,20382 -lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt,sha256=AVTFPZpEKzuHr7OvQZmhaU3LvwKz06AJw8mT_pNh2yI,3144 -lxml/lxml.etree.h,sha256=tVxNPlBEYitAxLTZi89zq_kT6T2__8DNeT7sD0kzO-U,8554 -lxml/lxml.etree_api.h,sha256=Jk5RXUtXl1eDKqJd_Cc-p2jEhQqR2xDNH1ivzBGiJXI,17836 -lxml/objectify.cpython-37m-darwin.so,sha256=F2qJJaTayQAQ_Z1KNIkxExE35EVwNqJryJLkjPi1gjQ,6871352 +lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt,sha256=OGLiFswuLJEW5EPYKOeoauuCJFEtVa6jyzBE1OcJI98,3310 +lxml/lxml.etree.h,sha256=TWrERq5QkJNhXNpaJ78yssgHB1B0FDvH6gdMOxvb6vE,8554 +lxml/lxml.etree_api.h,sha256=hiYv48QAV9FOBsOxnzaPEwDezna6nZksPuBvnmnWrnY,17471 +lxml/objectify.cpython-37m-darwin.so,sha256=dW6ODu7iMJ5Rkwj-a84tNfeNu3nrDh8FrSuV8weYoa8,6859304 lxml/pyclasslookup.py,sha256=gLD1HM2HtITYYiGzjEOewSwbB7XkVx_NZv_quCt79Oc,92 -lxml/sax.py,sha256=G3mtmEoFtZSEyThcalLtBdxn0FZNtCPpziTnwRGDUv0,8524 +lxml/sax.cpython-37m-darwin.so,sha256=Q7kPvIUd61f2h39FRz7YjwNIIepNDUWZFYMiDf0HN58,389332 +lxml/sax.py,sha256=xwHH7zbL6Vzp26fm50o2Jw1OkdualIcN4QoccYWRbqM,9406 lxml/usedoctest.py,sha256=qRgZKQVcAZcl-zN0AIXVJnOsETUXz2nPXkxuzs1lGgk,230 diff --git a/lib/python3.7/site-packages/lxml-4.2.5.dist-info/WHEEL b/lib/python3.7/site-packages/lxml-4.3.0.dist-info/WHEEL similarity index 87% rename from lib/python3.7/site-packages/lxml-4.2.5.dist-info/WHEEL rename to lib/python3.7/site-packages/lxml-4.3.0.dist-info/WHEEL index 8d19c2c..6b6e599 100644 --- a/lib/python3.7/site-packages/lxml-4.2.5.dist-info/WHEEL +++ b/lib/python3.7/site-packages/lxml-4.3.0.dist-info/WHEEL @@ -1,5 +1,5 @@ Wheel-Version: 1.0 -Generator: bdist_wheel (0.31.1) +Generator: bdist_wheel (0.32.3) Root-Is-Purelib: false Tag: cp37-cp37m-macosx_10_6_intel Tag: cp37-cp37m-macosx_10_9_intel diff --git a/lib/python3.7/site-packages/lxml-4.2.5.dist-info/top_level.txt b/lib/python3.7/site-packages/lxml-4.3.0.dist-info/top_level.txt similarity index 100% rename from lib/python3.7/site-packages/lxml-4.2.5.dist-info/top_level.txt rename to lib/python3.7/site-packages/lxml-4.3.0.dist-info/top_level.txt diff --git a/lib/python3.7/site-packages/lxml/_elementpath.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/_elementpath.cpython-37m-darwin.so old mode 100755 new mode 100644 index 279f101..5c37020 Binary files a/lib/python3.7/site-packages/lxml/_elementpath.cpython-37m-darwin.so and b/lib/python3.7/site-packages/lxml/_elementpath.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/_elementpath.py b/lib/python3.7/site-packages/lxml/_elementpath.py index 9360fab..5462df6 100644 --- a/lib/python3.7/site-packages/lxml/_elementpath.py +++ b/lib/python3.7/site-packages/lxml/_elementpath.py @@ -1,3 +1,5 @@ +# cython: language_level=2 + # # ElementTree # $Id: ElementPath.py 3375 2008-02-13 08:05:08Z fredrik $ @@ -53,6 +55,8 @@ # you, if needed. ## +from __future__ import absolute_import + import re xpath_tokenizer_re = re.compile( diff --git a/lib/python3.7/site-packages/lxml/builder.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/builder.cpython-37m-darwin.so old mode 100755 new mode 100644 index 2da3887..0181542 Binary files a/lib/python3.7/site-packages/lxml/builder.cpython-37m-darwin.so and b/lib/python3.7/site-packages/lxml/builder.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/builder.py b/lib/python3.7/site-packages/lxml/builder.py index 9c4431a..a288845 100644 --- a/lib/python3.7/site-packages/lxml/builder.py +++ b/lib/python3.7/site-packages/lxml/builder.py @@ -1,3 +1,5 @@ +# cython: language_level=2 + # # Element generator factory by Fredrik Lundh. # @@ -37,6 +39,8 @@ The ``E`` Element factory for generating XML documents. """ +from __future__ import absolute_import + import lxml.etree as ET from functools import partial diff --git a/lib/python3.7/site-packages/lxml/doctestcompare.py b/lib/python3.7/site-packages/lxml/doctestcompare.py index eb7c7f9..1b0daa4 100644 --- a/lib/python3.7/site-packages/lxml/doctestcompare.py +++ b/lib/python3.7/site-packages/lxml/doctestcompare.py @@ -209,13 +209,12 @@ class LXMLOutputChecker(OutputChecker): else: return value html = parser is html_fromstring - diff_parts = [] - diff_parts.append('Expected:') - diff_parts.append(self.format_doc(want_doc, html, 2)) - diff_parts.append('Got:') - diff_parts.append(self.format_doc(got_doc, html, 2)) - diff_parts.append('Diff:') - diff_parts.append(self.collect_diff(want_doc, got_doc, html, 2)) + diff_parts = ['Expected:', + self.format_doc(want_doc, html, 2), + 'Got:', + self.format_doc(got_doc, html, 2), + 'Diff:', + self.collect_diff(want_doc, got_doc, html, 2)] return '\n'.join(diff_parts) def html_empty_tag(self, el, html=True): diff --git a/lib/python3.7/site-packages/lxml/etree.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/etree.cpython-37m-darwin.so old mode 100755 new mode 100644 index 65d3818..0c888cd Binary files a/lib/python3.7/site-packages/lxml/etree.cpython-37m-darwin.so and b/lib/python3.7/site-packages/lxml/etree.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/etree.h b/lib/python3.7/site-packages/lxml/etree.h index a2fcf33..dcf7398 100644 --- a/lib/python3.7/site-packages/lxml/etree.h +++ b/lib/python3.7/site-packages/lxml/etree.h @@ -1,4 +1,4 @@ -/* Generated by Cython 0.28.5 */ +/* Generated by Cython 0.29.2 */ #ifndef __PYX_HAVE__lxml__etree #define __PYX_HAVE__lxml__etree @@ -12,7 +12,7 @@ struct LxmlElementBase; struct LxmlElementClassLookup; struct LxmlFallbackElementClassLookup; -/* "lxml/etree.pyx":320 +/* "lxml/etree.pyx":318 * * # type of a function that steps from node to node * ctypedef public xmlNode* (*_node_to_node_function)(xmlNode*) # <<<<<<<<<<<<<< @@ -21,7 +21,7 @@ struct LxmlFallbackElementClassLookup; */ typedef xmlNode *(*_node_to_node_function)(xmlNode *); -/* "lxml/etree.pyx":336 +/* "lxml/etree.pyx":334 * @cython.final * @cython.freelist(8) * cdef public class _Document [ type LxmlDocumentType, object LxmlDocument ]: # <<<<<<<<<<<<<< @@ -37,7 +37,7 @@ struct LxmlDocument { struct __pyx_obj_4lxml_5etree__BaseParser *_parser; }; -/* "lxml/etree.pyx":685 +/* "lxml/etree.pyx":683 * * @cython.no_gc_clear * cdef public class _Element [ type LxmlElementType, object LxmlElement ]: # <<<<<<<<<<<<<< @@ -51,7 +51,7 @@ struct LxmlElement { PyObject *_tag; }; -/* "lxml/etree.pyx":1849 +/* "lxml/etree.pyx":1847 * * * cdef public class _ElementTree [ type LxmlElementTreeType, # <<<<<<<<<<<<<< @@ -65,7 +65,7 @@ struct LxmlElementTree { struct LxmlElement *_context_node; }; -/* "lxml/etree.pyx":2576 +/* "lxml/etree.pyx":2574 * * * cdef public class _ElementTagMatcher [ object LxmlElementTagMatcher, # <<<<<<<<<<<<<< @@ -81,7 +81,7 @@ struct LxmlElementTagMatcher { char *_name; }; -/* "lxml/etree.pyx":2607 +/* "lxml/etree.pyx":2605 * self._name = NULL * * cdef public class _ElementIterator(_ElementTagMatcher) [ # <<<<<<<<<<<<<< diff --git a/lib/python3.7/site-packages/lxml/etree_api.h b/lib/python3.7/site-packages/lxml/etree_api.h index a5dd0e1..912f48c 100644 --- a/lib/python3.7/site-packages/lxml/etree_api.h +++ b/lib/python3.7/site-packages/lxml/etree_api.h @@ -1,7 +1,10 @@ -/* Generated by Cython 0.28.5 */ +/* Generated by Cython 0.29.2 */ #ifndef __PYX_HAVE_API__lxml__etree #define __PYX_HAVE_API__lxml__etree +#ifdef __MINGW64__ +#define MS_WIN64 +#endif #include "Python.h" #include "etree.h" @@ -103,23 +106,6 @@ static xmlNs *(*__pyx_api_f_4lxml_5etree_findOrBuildNodeNsPrefix)(struct LxmlDoc #endif #endif -#ifndef __PYX_HAVE_RT_ImportModule -#define __PYX_HAVE_RT_ImportModule -static PyObject *__Pyx_ImportModule(const char *name) { - PyObject *py_name = 0; - PyObject *py_module = 0; - py_name = __Pyx_PyIdentifier_FromString(name); - if (!py_name) - goto bad; - py_module = PyImport_Import(py_name); - Py_DECREF(py_name); - return py_module; -bad: - Py_XDECREF(py_name); - return 0; -} -#endif - #ifndef __PYX_HAVE_RT_ImportFunction #define __PYX_HAVE_RT_ImportFunction static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { @@ -176,7 +162,7 @@ bad: static int import_lxml__etree(void) { PyObject *module = 0; - module = __Pyx_ImportModule("lxml.etree"); + module = PyImport_ImportModule("lxml.etree"); if (!module) goto bad; if (__Pyx_ImportFunction(module, "deepcopyNodeToDocument", (void (**)(void))&__pyx_api_f_4lxml_5etree_deepcopyNodeToDocument, "struct LxmlElement *(struct LxmlDocument *, xmlNode *)") < 0) goto bad; if (__Pyx_ImportFunction(module, "elementTreeFactory", (void (**)(void))&__pyx_api_f_4lxml_5etree_elementTreeFactory, "struct LxmlElementTree *(struct LxmlElement *)") < 0) goto bad; diff --git a/lib/python3.7/site-packages/lxml/html/__init__.py b/lib/python3.7/site-packages/lxml/html/__init__.py index 4502373..5751f70 100644 --- a/lib/python3.7/site-packages/lxml/html/__init__.py +++ b/lib/python3.7/site-packages/lxml/html/__init__.py @@ -46,7 +46,6 @@ import re from functools import partial try: - # while unnecessary, importing from 'collections.abc' is the right way to do it from collections.abc import MutableMapping, MutableSet except ImportError: from collections import MutableMapping, MutableSet diff --git a/lib/python3.7/site-packages/lxml/html/_setmixin.py b/lib/python3.7/site-packages/lxml/html/_setmixin.py index c14a3eb..c99738e 100644 --- a/lib/python3.7/site-packages/lxml/html/_setmixin.py +++ b/lib/python3.7/site-packages/lxml/html/_setmixin.py @@ -1,4 +1,8 @@ -from collections import MutableSet +try: + from collections.abc import MutableSet +except ImportError: + from collections import MutableSet + class SetMixin(MutableSet): diff --git a/lib/python3.7/site-packages/lxml/html/clean.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/html/clean.cpython-37m-darwin.so old mode 100755 new mode 100644 index f3893ff..16f5a58 Binary files a/lib/python3.7/site-packages/lxml/html/clean.cpython-37m-darwin.so and b/lib/python3.7/site-packages/lxml/html/clean.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/html/clean.py b/lib/python3.7/site-packages/lxml/html/clean.py index 11da295..aa9fc57 100644 --- a/lib/python3.7/site-packages/lxml/html/clean.py +++ b/lib/python3.7/site-packages/lxml/html/clean.py @@ -1,9 +1,13 @@ +# cython: language_level=2 + """A cleanup tool for HTML. Removes unwanted tags and content. See the `Cleaner` class for details. """ +from __future__ import absolute_import + import re import copy try: @@ -27,11 +31,6 @@ try: except NameError: # Python 3 unicode = str -try: - bytes -except NameError: - # Python < 2.6 - bytes = str try: basestring except NameError: @@ -213,7 +212,7 @@ class Cleaner(object): safe_attrs = defs.safe_attrs add_nofollow = False host_whitelist = () - whitelist_tags = set(['iframe', 'embed']) + whitelist_tags = {'iframe', 'embed'} def __init__(self, **kw): for name, value in kw.items(): diff --git a/lib/python3.7/site-packages/lxml/html/diff.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/html/diff.cpython-37m-darwin.so old mode 100755 new mode 100644 index b7f5e44..4c5f434 Binary files a/lib/python3.7/site-packages/lxml/html/diff.cpython-37m-darwin.so and b/lib/python3.7/site-packages/lxml/html/diff.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/html/diff.py b/lib/python3.7/site-packages/lxml/html/diff.py index 3126d96..5d143bd 100644 --- a/lib/python3.7/site-packages/lxml/html/diff.py +++ b/lib/python3.7/site-packages/lxml/html/diff.py @@ -1,3 +1,7 @@ +# cython: language_level=3 + +from __future__ import absolute_import + import difflib from lxml import etree from lxml.html import fragment_fromstring @@ -621,7 +625,7 @@ def fixup_chunks(chunks): % (cur_word, result, chunk, chunks)) cur_word.post_tags.append(chunk) else: - assert(0) + assert False if not result: return [token('', pre_tags=tag_accum)] @@ -799,7 +803,6 @@ def _move_el_inside_block(el, tag): if _contains_block_level_tag(child): break else: - import sys # No block-level tags in any child children_tag = etree.Element(tag) children_tag.text = el.text diff --git a/lib/python3.7/site-packages/lxml/includes/etree_defs.h b/lib/python3.7/site-packages/lxml/includes/etree_defs.h index f935a79..ccf35a5 100644 --- a/lib/python3.7/site-packages/lxml/includes/etree_defs.h +++ b/lib/python3.7/site-packages/lxml/includes/etree_defs.h @@ -6,8 +6,8 @@ #ifndef PY_VERSION_HEX # error the development package of Python (header files etc.) is not installed correctly #else -# if PY_VERSION_HEX < 0x02060000 || PY_MAJOR_VERSION >= 3 && PY_VERSION_HEX < 0x03020000 -# error this version of lxml requires Python 2.6, 2.7, 3.2 or later +# if PY_VERSION_HEX < 0x02070000 || PY_MAJOR_VERSION >= 3 && PY_VERSION_HEX < 0x03030000 +# error this version of lxml requires Python 2.7, 3.3 or later # endif #endif @@ -262,8 +262,6 @@ long _ftol2( double dblSource ) { return _ftol( dblSource ); } (((c_node)->ns == 0) ? 0 : ((c_node)->ns->href)) -/* PyCapsule was added in Py2.7 */ -#if PY_VERSION_HEX >= 0x02070000 #include "string.h" static void* lxml_unpack_xmldoc_capsule(PyObject* capsule, int* is_owned) { xmlDoc *c_doc; @@ -301,9 +299,6 @@ static void* lxml_unpack_xmldoc_capsule(PyObject* capsule, int* is_owned) { } return c_doc; } -#else -# define lxml_unpack_xmldoc_capsule(capsule, is_owned) ((((void)capsule, 0) || ((void)is_owned, 0)) ? NULL : NULL) -#endif /* Macro pair implementation of a depth first tree walker * diff --git a/lib/python3.7/site-packages/lxml/includes/libxml/globals.h b/lib/python3.7/site-packages/lxml/includes/libxml/globals.h index a9305aa..5e41b7b 100644 --- a/lib/python3.7/site-packages/lxml/includes/libxml/globals.h +++ b/lib/python3.7/site-packages/lxml/includes/libxml/globals.h @@ -17,7 +17,6 @@ #include #include #include -#include #include #include diff --git a/lib/python3.7/site-packages/lxml/includes/libxml/tree.h b/lib/python3.7/site-packages/lxml/includes/libxml/tree.h index 4a9b3bc..626ed6a 100644 --- a/lib/python3.7/site-packages/lxml/includes/libxml/tree.h +++ b/lib/python3.7/site-packages/lxml/includes/libxml/tree.h @@ -575,7 +575,7 @@ struct _xmlDoc { void *ids; /* Hash table for ID attributes if any */ void *refs; /* Hash table for IDREFs attributes if any */ const xmlChar *URL; /* The URI for that document */ - int charset; /* encoding of the in-memory content + int charset; /* Internal flag for charset handling, actually an xmlCharEncoding */ struct _xmlDict *dict; /* dict used to allocate names or NULL */ void *psvi; /* for type/PSVI informations */ diff --git a/lib/python3.7/site-packages/lxml/includes/libxml/xmlexports.h b/lib/python3.7/site-packages/lxml/includes/libxml/xmlexports.h index 2c79f81..31ab8a1 100644 --- a/lib/python3.7/site-packages/lxml/includes/libxml/xmlexports.h +++ b/lib/python3.7/site-packages/lxml/includes/libxml/xmlexports.h @@ -131,8 +131,8 @@ #endif #endif -/* Cygwin platform, GNU compiler */ -#if defined(_WIN32) && defined(__CYGWIN__) +/* Cygwin platform (does not define _WIN32), GNU compiler */ +#if defined(__CYGWIN__) #undef XMLPUBFUN #undef XMLPUBVAR #undef XMLCALL @@ -145,7 +145,7 @@ #if !defined(LIBXML_STATIC) #define XMLPUBVAR __declspec(dllimport) extern #else - #define XMLPUBVAR + #define XMLPUBVAR extern #endif #endif #define XMLCALL __cdecl diff --git a/lib/python3.7/site-packages/lxml/includes/libxml/xmlversion.h b/lib/python3.7/site-packages/lxml/includes/libxml/xmlversion.h index 8a77db9..7f934e7 100644 --- a/lib/python3.7/site-packages/lxml/includes/libxml/xmlversion.h +++ b/lib/python3.7/site-packages/lxml/includes/libxml/xmlversion.h @@ -29,21 +29,21 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); * * the version string like "1.2.3" */ -#define LIBXML_DOTTED_VERSION "2.9.8" +#define LIBXML_DOTTED_VERSION "2.9.9" /** * LIBXML_VERSION: * * the version number: 1.2.3 value is 10203 */ -#define LIBXML_VERSION 20908 +#define LIBXML_VERSION 20909 /** * LIBXML_VERSION_STRING: * * the version number string, 1.2.3 value is "10203" */ -#define LIBXML_VERSION_STRING "20908" +#define LIBXML_VERSION_STRING "20909" /** * LIBXML_VERSION_EXTRA: @@ -58,7 +58,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); * Macro to check that the libxml version in use is compatible with * the version the software has been compiled against */ -#define LIBXML_TEST_VERSION xmlCheckVersion(20908); +#define LIBXML_TEST_VERSION xmlCheckVersion(20909); #ifndef VMS #if 0 diff --git a/lib/python3.7/site-packages/lxml/includes/lxml-version.h b/lib/python3.7/site-packages/lxml/includes/lxml-version.h index f98d695..fdf48aa 100644 --- a/lib/python3.7/site-packages/lxml/includes/lxml-version.h +++ b/lib/python3.7/site-packages/lxml/includes/lxml-version.h @@ -1,3 +1,3 @@ #ifndef LXML_VERSION_STRING -#define LXML_VERSION_STRING "4.2.5" +#define LXML_VERSION_STRING "4.3.0" #endif diff --git a/lib/python3.7/site-packages/lxml/isoschematron/__init__.py b/lib/python3.7/site-packages/lxml/isoschematron/__init__.py index e66f6a1..5967b10 100644 --- a/lib/python3.7/site-packages/lxml/isoschematron/__init__.py +++ b/lib/python3.7/site-packages/lxml/isoschematron/__init__.py @@ -63,8 +63,8 @@ svrl_validation_errors = _etree.XPath( # RelaxNG validator for schematron schemas -schematron_schema_valid = _etree.RelaxNG(_etree.parse( - os.path.join(_resources_dir, 'rng', 'iso-schematron.rng'))) +schematron_schema_valid = _etree.RelaxNG( + file=os.path.join(_resources_dir, 'rng', 'iso-schematron.rng')) def stylesheet_params(**kwargs): diff --git a/lib/python3.7/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng b/lib/python3.7/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng index d822f0d..a4f504a 100644 --- a/lib/python3.7/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng +++ b/lib/python3.7/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng @@ -1,9 +1,29 @@ + @@ -63,6 +83,10 @@ + + + + @@ -105,6 +129,11 @@ + + + + + @@ -178,9 +207,14 @@ - - - + + + + + + + + @@ -189,9 +223,14 @@ - - - + + + + + + + + @@ -257,6 +296,11 @@ + + + + + @@ -367,6 +411,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -387,6 +466,11 @@ + + + + + @@ -434,6 +518,7 @@ + @@ -459,6 +544,7 @@ + @@ -501,6 +587,7 @@ + diff --git a/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl b/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl index 057c7c1..5018395 100644 --- a/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl +++ b/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl @@ -6,10 +6,11 @@ This is a preprocessor for ISO Schematron, which implements abstract patterns. It also * extracts a particular schema using an ID, where there are multiple - schemas, such as when they are embedded in the same NVDL script - * experimentally, allows parameter recognition and substitution inside - text as well as @context, @test, & @select. - + schemas, such as when they are embedded in the same NVDL script + * allows parameter substitution inside @context, @test, @select, @path + * experimentally, allows parameter recognition and substitution inside + text (NOTE: to be removed, for compataibility with other implementations, + please do not use this) This should be used after iso-dsdl-include.xsl and before the skeleton or meta-stylesheet (e.g. iso-svrl.xsl) . It only requires XSLT 1. @@ -17,8 +18,45 @@ Each kind of inclusion can be turned off (or on) on the command line. --> - + + - @@ -231,7 +245,7 @@ - + @@ -239,12 +253,13 @@ - + + delimiting. + NOTE: THIS FUNCTIONALITY WILL BE REMOVED IN THE FUTURE --> @@ -293,4 +308,6 @@ + + \ No newline at end of file diff --git a/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt b/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt index d9f68c5..e5d6dfc 100644 --- a/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt +++ b/lib/python3.7/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt @@ -1,83 +1,84 @@ -ISO SCHEMATRON 2009 - -XSLT implementation by Rick Jelliffe with assistance from members of Schematron-love-in maillist. - -2009-03-18 - -Two distributions are available. One is for XSLT1 engines. -The other is for XSLT2 engines, such as SAXON 9. - - -This version of Schematron splits the process into a pipeline of several different XSLT stages. - -1) First, preprocess your Schematron schema with iso_dsdl_include.xsl. -This is a macro processor to assemble the schema from various parts. -If your schema is not in separate parts, you can skip this stage. - -2) Second, preprocess the output from stage 1 with iso_abstract_expand.xsl. -This is a macro processor to convert abstract patterns to real patterns. -If your schema does not use abstract patterns, you can skip this -stage. - -3) Third, compile the Schematron schema into an XSLT script. -This will typically use iso_svrl_for_xslt1.xsl or iso_svrl_for_xslt2.xsl -(which in turn invoke iso_schematron_skeleton_for_xslt1.xsl or iso_schematron_skeleton_for_saxon.xsl) -However, other "meta-styleseets" are also in common use; the principle of operation is the same. -If your schema uses Schematron phases, supply these as command line/invocation parameters -to this process. - -4) Fourth, run the script generated by stage 3 against the document being validated. -If you are using the SVRL script, then the output of validation will be an XML document. -If your schema uses Schematron parameters, supply these as command line/invocation parameters -to this process. - - -The XSLT2 distribution also features several next generation features, -such as validating multiple documents. See the source code for details. - -Schematron assertions can be written in any language, of course; the file -sch-messages-en.xhtml contains the diagnostics messages from the XSLT2 skeleton -in English, and this can be used as template to localize the skeleton's -error messages. Note that typically programming errors in Schematron are XPath -errors, which requires localized messages from the XSLT engine. - -ANT ---- -To give an example of how to process a document, here is a sample ANT task. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file +ISO SCHEMATRON 2010 + +XSLT implementation by Rick Jelliffe with assistance from members of Schematron-love-in maillist. + +2010-04-21 + +Two distributions are available. One is for XSLT1 engines. +The other is for XSLT2 engines, such as SAXON 9. + + +This version of Schematron splits the process into a pipeline of several different XSLT stages. + +1) First, preprocess your Schematron schema with iso_dsdl_include.xsl. +This is a macro processor to assemble the schema from various parts. +If your schema is not in separate parts, you can skip this stage. +This stage also generates error messages for some common XPath syntax problems. + +2) Second, preprocess the output from stage 1 with iso_abstract_expand.xsl. +This is a macro processor to convert abstract patterns to real patterns. +If your schema does not use abstract patterns, you can skip this +stage. + +3) Third, compile the Schematron schema into an XSLT script. +This will typically use iso_svrl_for_xslt1.xsl or iso_svrl_for_xslt2.xsl +(which in turn invoke iso_schematron_skeleton_for_xslt1.xsl or iso_schematron_skeleton_for_saxon.xsl) +However, other "meta-stylesheets" are also in common use; the principle of operation is the same. +If your schema uses Schematron phases, supply these as command line/invocation parameters +to this process. + +4) Fourth, run the script generated by stage 3 against the document being validated. +If you are using the SVRL script, then the output of validation will be an XML document. +If your schema uses Schematron parameters, supply these as command line/invocation parameters +to this process. + + +The XSLT2 distribution also features several next generation features, +such as validating multiple documents. See the source code for details. + +Schematron assertions can be written in any language, of course; the file +sch-messages-en.xhtml contains the diagnostics messages from the XSLT2 skeleton +in English, and this can be used as template to localize the skeleton's +error messages. Note that typically programming errors in Schematron are XPath +errors, which requires localized messages from the XSLT engine. + +ANT +--- +To give an example of how to process a document, here is a sample ANT task. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/python3.7/site-packages/lxml/lxml.etree.h b/lib/python3.7/site-packages/lxml/lxml.etree.h index a2fcf33..dcf7398 100644 --- a/lib/python3.7/site-packages/lxml/lxml.etree.h +++ b/lib/python3.7/site-packages/lxml/lxml.etree.h @@ -1,4 +1,4 @@ -/* Generated by Cython 0.28.5 */ +/* Generated by Cython 0.29.2 */ #ifndef __PYX_HAVE__lxml__etree #define __PYX_HAVE__lxml__etree @@ -12,7 +12,7 @@ struct LxmlElementBase; struct LxmlElementClassLookup; struct LxmlFallbackElementClassLookup; -/* "lxml/etree.pyx":320 +/* "lxml/etree.pyx":318 * * # type of a function that steps from node to node * ctypedef public xmlNode* (*_node_to_node_function)(xmlNode*) # <<<<<<<<<<<<<< @@ -21,7 +21,7 @@ struct LxmlFallbackElementClassLookup; */ typedef xmlNode *(*_node_to_node_function)(xmlNode *); -/* "lxml/etree.pyx":336 +/* "lxml/etree.pyx":334 * @cython.final * @cython.freelist(8) * cdef public class _Document [ type LxmlDocumentType, object LxmlDocument ]: # <<<<<<<<<<<<<< @@ -37,7 +37,7 @@ struct LxmlDocument { struct __pyx_obj_4lxml_5etree__BaseParser *_parser; }; -/* "lxml/etree.pyx":685 +/* "lxml/etree.pyx":683 * * @cython.no_gc_clear * cdef public class _Element [ type LxmlElementType, object LxmlElement ]: # <<<<<<<<<<<<<< @@ -51,7 +51,7 @@ struct LxmlElement { PyObject *_tag; }; -/* "lxml/etree.pyx":1849 +/* "lxml/etree.pyx":1847 * * * cdef public class _ElementTree [ type LxmlElementTreeType, # <<<<<<<<<<<<<< @@ -65,7 +65,7 @@ struct LxmlElementTree { struct LxmlElement *_context_node; }; -/* "lxml/etree.pyx":2576 +/* "lxml/etree.pyx":2574 * * * cdef public class _ElementTagMatcher [ object LxmlElementTagMatcher, # <<<<<<<<<<<<<< @@ -81,7 +81,7 @@ struct LxmlElementTagMatcher { char *_name; }; -/* "lxml/etree.pyx":2607 +/* "lxml/etree.pyx":2605 * self._name = NULL * * cdef public class _ElementIterator(_ElementTagMatcher) [ # <<<<<<<<<<<<<< diff --git a/lib/python3.7/site-packages/lxml/lxml.etree_api.h b/lib/python3.7/site-packages/lxml/lxml.etree_api.h index efdadf2..89d55b7 100644 --- a/lib/python3.7/site-packages/lxml/lxml.etree_api.h +++ b/lib/python3.7/site-packages/lxml/lxml.etree_api.h @@ -1,7 +1,10 @@ -/* Generated by Cython 0.28.5 */ +/* Generated by Cython 0.29.2 */ #ifndef __PYX_HAVE_API__lxml__etree #define __PYX_HAVE_API__lxml__etree +#ifdef __MINGW64__ +#define MS_WIN64 +#endif #include "Python.h" #include "lxml.etree.h" @@ -103,23 +106,6 @@ static xmlNs *(*__pyx_api_f_4lxml_5etree_findOrBuildNodeNsPrefix)(struct LxmlDoc #endif #endif -#ifndef __PYX_HAVE_RT_ImportModule -#define __PYX_HAVE_RT_ImportModule -static PyObject *__Pyx_ImportModule(const char *name) { - PyObject *py_name = 0; - PyObject *py_module = 0; - py_name = __Pyx_PyIdentifier_FromString(name); - if (!py_name) - goto bad; - py_module = PyImport_Import(py_name); - Py_DECREF(py_name); - return py_module; -bad: - Py_XDECREF(py_name); - return 0; -} -#endif - #ifndef __PYX_HAVE_RT_ImportFunction #define __PYX_HAVE_RT_ImportFunction static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { @@ -176,7 +162,7 @@ bad: static int import_lxml__etree(void) { PyObject *module = 0; - module = __Pyx_ImportModule("lxml.etree"); + module = PyImport_ImportModule("lxml.etree"); if (!module) goto bad; if (__Pyx_ImportFunction(module, "deepcopyNodeToDocument", (void (**)(void))&__pyx_api_f_4lxml_5etree_deepcopyNodeToDocument, "struct LxmlElement *(struct LxmlDocument *, xmlNode *)") < 0) goto bad; if (__Pyx_ImportFunction(module, "elementTreeFactory", (void (**)(void))&__pyx_api_f_4lxml_5etree_elementTreeFactory, "struct LxmlElementTree *(struct LxmlElement *)") < 0) goto bad; diff --git a/lib/python3.7/site-packages/lxml/objectify.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/objectify.cpython-37m-darwin.so old mode 100755 new mode 100644 index 72ebc82..e5a2408 Binary files a/lib/python3.7/site-packages/lxml/objectify.cpython-37m-darwin.so and b/lib/python3.7/site-packages/lxml/objectify.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/sax.cpython-37m-darwin.so b/lib/python3.7/site-packages/lxml/sax.cpython-37m-darwin.so new file mode 100644 index 0000000..3e68363 Binary files /dev/null and b/lib/python3.7/site-packages/lxml/sax.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/lxml/sax.py b/lib/python3.7/site-packages/lxml/sax.py index cb9326d..299c235 100644 --- a/lib/python3.7/site-packages/lxml/sax.py +++ b/lib/python3.7/site-packages/lxml/sax.py @@ -1,3 +1,5 @@ +# cython: language_level=2 + """ SAX-based adapter to copy trees from/to the Python standard library. @@ -10,6 +12,8 @@ the SAX events of an ElementTree against a SAX ContentHandler. See http://codespeak.net/lxml/sax.html """ +from __future__ import absolute_import + from xml.sax.handler import ContentHandler from lxml import etree from lxml.etree import ElementTree, SubElement @@ -25,7 +29,7 @@ def _getNsTag(tag): if tag[0] == '{': return tuple(tag[1:].split('}', 1)) else: - return (None, tag) + return None, tag class ElementTreeContentHandler(ContentHandler): @@ -189,19 +193,26 @@ class ElementTreeProducer(object): self._content_handler.endDocument() - def _recursive_saxify(self, element, prefixes): + def _recursive_saxify(self, element, parent_nsmap): content_handler = self._content_handler tag = element.tag if tag is Comment or tag is ProcessingInstruction: if tag is ProcessingInstruction: content_handler.processingInstruction( element.target, element.text) - if element.tail: - content_handler.characters(element.tail) + tail = element.tail + if tail: + content_handler.characters(tail) return + element_nsmap = element.nsmap new_prefixes = [] - build_qname = self._build_qname + if element_nsmap != parent_nsmap: + # There have been updates to the namespace + for prefix, ns_uri in element_nsmap.items(): + if parent_nsmap.get(prefix) != ns_uri: + new_prefixes.append( (prefix, ns_uri) ) + attribs = element.items() if attribs: attr_values = {} @@ -209,39 +220,57 @@ class ElementTreeProducer(object): for attr_ns_name, value in attribs: attr_ns_tuple = _getNsTag(attr_ns_name) attr_values[attr_ns_tuple] = value - attr_qnames[attr_ns_tuple] = build_qname( - attr_ns_tuple[0], attr_ns_tuple[1], prefixes, new_prefixes) + attr_qnames[attr_ns_tuple] = self._build_qname( + attr_ns_tuple[0], attr_ns_tuple[1], element_nsmap, + preferred_prefix=None, is_attribute=True) sax_attributes = self._attr_class(attr_values, attr_qnames) else: sax_attributes = self._empty_attributes ns_uri, local_name = _getNsTag(tag) - qname = build_qname(ns_uri, local_name, prefixes, new_prefixes) + qname = self._build_qname( + ns_uri, local_name, element_nsmap, element.prefix, is_attribute=False) for prefix, uri in new_prefixes: content_handler.startPrefixMapping(prefix, uri) - content_handler.startElementNS((ns_uri, local_name), - qname, sax_attributes) - if element.text: - content_handler.characters(element.text) + content_handler.startElementNS( + (ns_uri, local_name), qname, sax_attributes) + text = element.text + if text: + content_handler.characters(text) for child in element: - self._recursive_saxify(child, prefixes) + self._recursive_saxify(child, element_nsmap) content_handler.endElementNS((ns_uri, local_name), qname) for prefix, uri in new_prefixes: content_handler.endPrefixMapping(prefix) - if element.tail: - content_handler.characters(element.tail) + tail = element.tail + if tail: + content_handler.characters(tail) - def _build_qname(self, ns_uri, local_name, prefixes, new_prefixes): + def _build_qname(self, ns_uri, local_name, nsmap, preferred_prefix, is_attribute): if ns_uri is None: return local_name - try: - prefix = prefixes[ns_uri] - except KeyError: - prefix = prefixes[ns_uri] = 'ns%02d' % len(prefixes) - new_prefixes.append( (prefix, ns_uri) ) + + if not is_attribute and nsmap.get(preferred_prefix) == ns_uri: + prefix = preferred_prefix + else: + # Pick the first matching prefix, in alphabetical order. + candidates = [ + pfx for (pfx, uri) in nsmap.items() + if pfx is not None and uri == ns_uri + ] + prefix = ( + candidates[0] if len(candidates) == 1 + else min(candidates) if candidates + else None + ) + + if prefix is None: + # Default namespace + return local_name return prefix + ':' + local_name + def saxify(element_or_tree, content_handler): """One-shot helper to generate SAX events from an XML tree and fire them against a SAX ContentHandler. diff --git a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/PKG-INFO b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/PKG-INFO similarity index 87% rename from lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/PKG-INFO rename to lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/PKG-INFO index ac4b3ec..51ba790 100644 --- a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/PKG-INFO +++ b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/PKG-INFO @@ -1,12 +1,12 @@ Metadata-Version: 1.1 Name: netifaces -Version: 0.10.7 +Version: 0.10.9 Summary: Portable network interface information. Home-page: https://github.com/al45tair/netifaces Author: Alastair Houghton Author-email: alastair@alastairs-place.net License: MIT License -Description: netifaces 0.10.7 +Description: netifaces 0.10.8 ================ +-------------+------------------+ @@ -42,8 +42,8 @@ Description: netifaces 0.10.7 First you need to install it, which you can do by typing:: - tar xvzf netifaces-0.10.7.tar.gz - cd netifaces-0.10.7 + tar xvzf netifaces-0.10.8.tar.gz + cd netifaces-0.10.8 python setup.py install **Note that you will need the relevant developer tools for your platform**, @@ -183,27 +183,7 @@ Description: netifaces 0.10.7 4. What license is this under? ------------------------------ - It's an MIT-style license. Here goes: - - Copyright (c) 2007-2018 Alastair Houghton - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. + It's an MIT-style license. See `LICENSE <./LICENSE>`_. 5. Why the jump to 0.10.0? -------------------------- diff --git a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/SOURCES.txt b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/SOURCES.txt similarity index 78% rename from lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/SOURCES.txt rename to lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/SOURCES.txt index a382c6c..8677b30 100644 --- a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/SOURCES.txt +++ b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/SOURCES.txt @@ -1,3 +1,5 @@ +LICENSE +MANIFEST.in README.rst netifaces.c setup.cfg diff --git a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/dependency_links.txt b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/dependency_links.txt similarity index 100% rename from lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/dependency_links.txt rename to lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/dependency_links.txt diff --git a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/installed-files.txt b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/installed-files.txt similarity index 100% rename from lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/installed-files.txt rename to lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/installed-files.txt diff --git a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/top_level.txt b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/top_level.txt similarity index 100% rename from lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/top_level.txt rename to lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/top_level.txt diff --git a/lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/zip-safe b/lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/zip-safe similarity index 100% rename from lib/python3.7/site-packages/netifaces-0.10.7-py3.7.egg-info/zip-safe rename to lib/python3.7/site-packages/netifaces-0.10.9-py3.7.egg-info/zip-safe diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/INSTALLER b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/LICENSE b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/LICENSE new file mode 100644 index 0000000..0b5bad0 --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2007-2018 Alastair Houghton + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/METADATA b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/METADATA new file mode 100644 index 0000000..324b77e --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/METADATA @@ -0,0 +1,212 @@ +Metadata-Version: 2.1 +Name: netifaces +Version: 0.10.9 +Summary: Portable network interface information. +Home-page: https://github.com/al45tair/netifaces +Author: Alastair Houghton +Author-email: alastair@alastairs-place.net +License: MIT License +Platform: UNKNOWN +Classifier: Development Status :: 4 - Beta +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: MIT License +Classifier: Topic :: System :: Networking +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 2 +Classifier: Programming Language :: Python :: 2.5 +Classifier: Programming Language :: Python :: 2.6 +Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.4 +Classifier: Programming Language :: Python :: 3.5 +Classifier: Programming Language :: Python :: 3.6 + +netifaces 0.10.8 +================ + ++-------------+------------------+ +| Linux/macOS | |BuildStatus| | ++-------------+------------------+ +| Windows | |WinBuildStatus| | ++-------------+------------------+ + +.. |BuildStatus| image:: https://travis-ci.org/al45tair/netifaces.svg?branch=master + :target: https://travis-ci.org/al45tair/dmgbuild + :alt: Build Status (Linux/Mac) + +.. |WinBuildStatus| image:: https://ci.appveyor.com/api/projects/status/3ctn1bl0aigpfjoo/branch/master?svg=true + :target: https://ci.appveyor.com/project/al45tair/netifaces/branch/master + :alt: Build Status (Windows) + +1. What is this? +---------------- + +It's been annoying me for some time that there's no easy way to get the +address(es) of the machine's network interfaces from Python. There is +a good reason for this difficulty, which is that it is virtually impossible +to do so in a portable manner. However, it seems to me that there should +be a package you can easy_install that will take care of working out the +details of doing so on the machine you're using, then you can get on with +writing Python code without concerning yourself with the nitty gritty of +system-dependent low-level networking APIs. + +This package attempts to solve that problem. + +2. How do I use it? +------------------- + +First you need to install it, which you can do by typing:: + + tar xvzf netifaces-0.10.8.tar.gz + cd netifaces-0.10.8 + python setup.py install + +**Note that you will need the relevant developer tools for your platform**, +as netifaces is written in C and installing this way will compile the extension. + +Once that's done, you'll need to start Python and do something like the +following:: + +>>> import netifaces + +Then if you enter + +>>> netifaces.interfaces() +['lo0', 'gif0', 'stf0', 'en0', 'en1', 'fw0'] + +you'll see the list of interface identifiers for your machine. + +You can ask for the addresses of a particular interface by doing + +>>> netifaces.ifaddresses('lo0') +{18: [{'addr': ''}], 2: [{'peer': '127.0.0.1', 'netmask': '255.0.0.0', 'addr': '127.0.0.1'}], 30: [{'peer': '::1', 'netmask': 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff', 'addr': '::1'}, {'peer': '', 'netmask': 'ffff:ffff:ffff:ffff::', 'addr': 'fe80::1%lo0'}]} + +Hmmmm. That result looks a bit cryptic; let's break it apart and explain +what each piece means. It returned a dictionary, so let's look there first:: + + { 18: [...], 2: [...], 30: [...] } + +Each of the numbers refers to a particular address family. In this case, we +have three address families listed; on my system, 18 is ``AF_LINK`` (which means +the link layer interface, e.g. Ethernet), 2 is ``AF_INET`` (normal Internet +addresses), and 30 is ``AF_INET6`` (IPv6). + +But wait! Don't use these numbers in your code. The numeric values here are +system dependent; fortunately, I thought of that when writing netifaces, so +the module declares a range of values that you might need. e.g. + +>>> netifaces.AF_LINK +18 + +Again, on your system, the number may be different. + +So, what we've established is that the dictionary that's returned has one +entry for each address family for which this interface has an address. Let's +take a look at the ``AF_INET`` addresses now: + +>>> addrs = netifaces.ifaddresses('lo0') +>>> addrs[netifaces.AF_INET] +[{'peer': '127.0.0.1', 'netmask': '255.0.0.0', 'addr': '127.0.0.1'}] + +You might be wondering why this value is a list. The reason is that it's +possible for an interface to have more than one address, even within the +same family. I'll say that again: *you can have more than one address of +the same type associated with each interface*. + +*Asking for "the" address of a particular interface doesn't make sense.* + +Right, so, we can see that this particular interface only has one address, +and, because it's a loopback interface, it's point-to-point and therefore +has a *peer* address rather than a broadcast address. + +Let's look at a more interesting interface. + +>>> addrs = netifaces.ifaddresses('en0') +>>> addrs[netifaces.AF_INET] +[{'broadcast': '10.15.255.255', 'netmask': '255.240.0.0', 'addr': '10.0.1.4'}, {'broadcast': '192.168.0.255', 'addr': '192.168.0.47'}] + +This interface has two addresses (see, I told you...) Both of them are +regular IPv4 addresses, although in one case the netmask has been changed +from its default. The netmask *may not* appear on your system if it's set +to the default for the address range. + +Because this interface isn't point-to-point, it also has broadcast addresses. + +Now, say we want, instead of the IP addresses, to get the MAC address; that +is, the hardware address of the Ethernet adapter running this interface. We +can do + +>>> addrs[netifaces.AF_LINK] +[{'addr': '00:12:34:56:78:9a'}] + +Note that this may not be available on platforms without getifaddrs(), unless +they happen to implement ``SIOCGIFHWADDR``. Note also that you just get the +address; it's unlikely that you'll see anything else with an ``AF_LINK`` address. +Oh, and don't assume that all ``AF_LINK`` addresses are Ethernet; you might, for +instance, be on a Mac, in which case: + +>>> addrs = netifaces.ifaddresses('fw0') +>>> addrs[netifaces.AF_LINK] +[{'addr': '00:12:34:56:78:9a:bc:de'}] + +No, that isn't an exceptionally long Ethernet MAC address---it's a FireWire +address. + +As of version 0.10.0, you can also obtain a list of gateways on your +machine: + +>>> netifaces.gateways() +{2: [('10.0.1.1', 'en0', True), ('10.2.1.1', 'en1', False)], 30: [('fe80::1', 'en0', True)], 'default': { 2: ('10.0.1.1', 'en0'), 30: ('fe80::1', 'en0') }} + +This dictionary is keyed on address family---in this case, ``AF_INET``---and +each entry is a list of gateways as ``(address, interface, is_default)`` tuples. +Notice that here we have two separate gateways for IPv4 (``AF_INET``); some +operating systems support configurations like this and can either route packets +based on their source, or based on administratively configured routing tables. + +For convenience, we also allow you to index the dictionary with the special +value ``'default'``, which returns a dictionary mapping address families to the +default gateway in each case. Thus you can get the default IPv4 gateway with + +>>> gws = netifaces.gateways() +>>> gws['default'][netifaces.AF_INET] +('10.0.1.1', 'en0') + +Do note that there may be no default gateway for any given address family; +this is currently very common for IPv6 and much less common for IPv4 but it +can happen even for ``AF_INET``. + +BTW, if you're trying to configure your machine to have multiple gateways for +the same address family, it's a very good idea to check the documentation for +your operating system *very* carefully, as some systems become extremely +confused or route packets in a non-obvious manner. + +I'm very interested in hearing from anyone (on any platform) for whom the +``gateways()`` method doesn't produce the expected results. It's quite +complicated extracting this information from the operating system (whichever +operating system we're talking about), and so I expect there's at least one +system out there where this just won't work. + +3. This is great! What platforms does it work on? +-------------------------------------------------- + +It gets regular testing on OS X, Linux and Windows. It has also been used +successfully on Solaris, and it's expected to work properly on other UNIX-like +systems as well. If you are running something that is not supported, and +wish to contribute a patch, please use Github to send a pull request. + +4. What license is this under? +------------------------------ + +It's an MIT-style license. See `LICENSE <./LICENSE>`_. + +5. Why the jump to 0.10.0? +-------------------------- + +Because someone released a fork of netifaces with the version 0.9.0. +Hopefully skipping the version number should remove any confusion. In +addition starting with 0.10.0 Python 3 is now supported and other +features/bugfixes have been included as well. See the CHANGELOG for a +more complete list of changes. + + diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/RECORD b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/RECORD new file mode 100644 index 0000000..ded2995 --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/RECORD @@ -0,0 +1,8 @@ +netifaces-0.10.9.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +netifaces-0.10.9.dist-info/LICENSE,sha256=sguJUWS3K5zAFw5sDWCxT5qqzGhiwFVu7UHqo0iINwU,1066 +netifaces-0.10.9.dist-info/METADATA,sha256=rG8Dtu9BFjWNmas4QKGqkthux0AVpZ1mJ3Ewfj7xbjs,8784 +netifaces-0.10.9.dist-info/RECORD,, +netifaces-0.10.9.dist-info/WHEEL,sha256=THXetA5lQ5zcCNJkmwdVMBot_AZ4TJBX17Q2pw_Pv58,111 +netifaces-0.10.9.dist-info/top_level.txt,sha256=PqMTaIuWtSjkdQHX6lH1Lmpv2aqBUYAGqATB8z3A6TQ,10 +netifaces-0.10.9.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1 +netifaces.cpython-37m-darwin.so,sha256=zSmYzLnIKLilJRZyBtq0onsQAi74I2SASKMM7EzOyxU,20392 diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/WHEEL b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/WHEEL new file mode 100644 index 0000000..822ba1e --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: bdist_wheel (0.32.3) +Root-Is-Purelib: false +Tag: cp37-cp37m-macosx_10_14_x86_64 + diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/top_level.txt b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/top_level.txt new file mode 100644 index 0000000..3f008fd --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/top_level.txt @@ -0,0 +1 @@ +netifaces diff --git a/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/zip-safe b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/zip-safe new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/python3.7/site-packages/netifaces-0.10.9.dist-info/zip-safe @@ -0,0 +1 @@ + diff --git a/lib/python3.7/site-packages/netifaces.cpython-37m-darwin.so b/lib/python3.7/site-packages/netifaces.cpython-37m-darwin.so index e02c37b..f1b2692 100755 Binary files a/lib/python3.7/site-packages/netifaces.cpython-37m-darwin.so and b/lib/python3.7/site-packages/netifaces.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/pip-18.1.dist-info/RECORD b/lib/python3.7/site-packages/pip-18.1.dist-info/RECORD index 7a01d74..0e4ddf0 100644 --- a/lib/python3.7/site-packages/pip-18.1.dist-info/RECORD +++ b/lib/python3.7/site-packages/pip-18.1.dist-info/RECORD @@ -1,4 +1,4 @@ -../../../bin/pip3.7,sha256=60P63jMJfVZJYq-Lo5U812EhghMzQOHeKmnIdeY5Kfc,256 +../../../bin/pip3.7,sha256=tsIqHt4_cvrNsnsHHicYugfK9iYJK3x6VrKwWDv8Kqc,286 pip-18.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 pip-18.1.dist-info/LICENSE.txt,sha256=ORqHhOMZ2uVDFHfUzJvFBPxdcf2eieHIDxzThV9dfPo,1090 pip-18.1.dist-info/METADATA,sha256=D7pqBJTuqM9w_HTW91a0XGjLT9vynlBAE4pPCt_W_UE,2588 diff --git a/lib/python3.7/site-packages/pycrypto-2.6.1-py3.7.egg-info/installed-files.txt b/lib/python3.7/site-packages/pycrypto-2.6.1-py3.7.egg-info/installed-files.txt index a8ca3f1..54e1cd0 100644 --- a/lib/python3.7/site-packages/pycrypto-2.6.1-py3.7.egg-info/installed-files.txt +++ b/lib/python3.7/site-packages/pycrypto-2.6.1-py3.7.egg-info/installed-files.txt @@ -83,6 +83,7 @@ ../Crypto/PublicKey/__pycache__/__init__.cpython-37.pyc ../Crypto/PublicKey/__pycache__/_slowmath.cpython-37.pyc ../Crypto/PublicKey/__pycache__/pubkey.cpython-37.pyc +../Crypto/PublicKey/_fastmath.cpython-37m-darwin.so ../Crypto/PublicKey/_slowmath.py ../Crypto/PublicKey/pubkey.py ../Crypto/Random/Fortuna/FortunaAccumulator.py diff --git a/lib/python3.7/site-packages/setuptools-40.6.2.dist-info/RECORD b/lib/python3.7/site-packages/setuptools-40.6.2.dist-info/RECORD index 048a60c..eb51f26 100644 --- a/lib/python3.7/site-packages/setuptools-40.6.2.dist-info/RECORD +++ b/lib/python3.7/site-packages/setuptools-40.6.2.dist-info/RECORD @@ -1,4 +1,4 @@ -../../../bin/easy_install-3.7,sha256=wIa_CxVgMyCKYLLQ6z-tzn7gZ-F_RDJmoc4BmCC7q_Q,274 +../../../bin/easy_install-3.7,sha256=wBOebwUxphKkvslU3QPEqapQiMmR9WQwSjbzF_PZme0,304 __pycache__/easy_install.cpython-37.pyc,, easy_install.py,sha256=MDC9vt5AxDsXX5qcKlBz2TnW6Tpuv_AobnfhCJ9X3PM,126 pkg_resources/__init__.py,sha256=d7w_yqCD39lZE0-qxhWXPYoc-pZc3G2mD7EU2xhRLpM,104720 diff --git a/lib/python3.7/site-packages/simplejson/_speedups.cpython-37m-darwin.so b/lib/python3.7/site-packages/simplejson/_speedups.cpython-37m-darwin.so index 970351f..e6c16b2 100755 Binary files a/lib/python3.7/site-packages/simplejson/_speedups.cpython-37m-darwin.so and b/lib/python3.7/site-packages/simplejson/_speedups.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/sqlalchemy/cprocessors.cpython-37m-darwin.so b/lib/python3.7/site-packages/sqlalchemy/cprocessors.cpython-37m-darwin.so index b63b6f1..b6f17d0 100755 Binary files a/lib/python3.7/site-packages/sqlalchemy/cprocessors.cpython-37m-darwin.so and b/lib/python3.7/site-packages/sqlalchemy/cprocessors.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/sqlalchemy/cresultproxy.cpython-37m-darwin.so b/lib/python3.7/site-packages/sqlalchemy/cresultproxy.cpython-37m-darwin.so index 67c9e3a..faa84f7 100755 Binary files a/lib/python3.7/site-packages/sqlalchemy/cresultproxy.cpython-37m-darwin.so and b/lib/python3.7/site-packages/sqlalchemy/cresultproxy.cpython-37m-darwin.so differ diff --git a/lib/python3.7/site-packages/sqlalchemy/cutils.cpython-37m-darwin.so b/lib/python3.7/site-packages/sqlalchemy/cutils.cpython-37m-darwin.so index 491c60d..751365e 100755 Binary files a/lib/python3.7/site-packages/sqlalchemy/cutils.cpython-37m-darwin.so and b/lib/python3.7/site-packages/sqlalchemy/cutils.cpython-37m-darwin.so differ