Commit Graph

380 Commits

Author SHA1 Message Date
Tohka 5fdbc97499 direct: Fix TexMemWatcher crash when graphics memory reaches 1 GB
Closes #975

Co-authored-by: rdb <git@rdb.name>
2020-07-25 10:32:36 +02:00
rdb 088b90e887 TexMemWatcher: fix compatibility issues with Python 3
Closes #578
2019-03-10 20:21:54 +01:00
Mitchell Stokes 587237577f deploy-ng: Move distribution related files from direct.showtutil to direct.dist 2018-12-18 20:33:12 -08:00
Mitchell Stokes d98301b8d3 deploy-ng: Add direct.particles.ParticleManagerGlobal as hidden import for direct.particles
Fixes #481
2018-12-18 19:03:08 -08:00
rdb 4c0fa1e75d Merge branch 'master' into deploy-ng 2018-12-16 22:36:45 +01:00
rdb b11debcf3d pfreeze: fixes for Python 3.7
See python/cpython#5432 - imp module now has the proper name
The DL_IMPORT and DL_EXPORT macros seem to have been removed.
2018-12-16 15:32:18 +01:00
rdb 8a9cac8c49 deploy-ng: use proper patch matching for globs 2018-12-09 21:24:51 +01:00
rdb 083e3ecc74 deploy-ng: add DLL search directory for scipy wheel 2018-12-09 21:18:03 +01:00
Mitchell Stokes 09bbee8dea deploy-ng: Default platforms to a list of platforms instead of the host platform
The list is:
  * manylinux1_x86_64
  * macosx_10_6_x86_64
  * win_amd64

Of note, win32 is missing from this list. We can add it later if there
is desire.

Also of note, there is now no path to *not* using wheels. We will need
to evaluate if we want to keep this around and, if so, expose it as an
option to users.
2018-12-08 16:19:35 -08:00
rdb 192913bf8e freezer: work around Python modulefinder bug (bpo-35376) 2018-12-02 16:26:47 +01:00
Mitchell Stokes 0c1572ce33 deploy-ng: Fix reference (e.g., texture) paths when using egg2bam
Fixes #277
2018-11-17 14:19:04 -08:00
rdb ea832efb81 deploy-ng: fix run error with frozen attr module 2018-11-12 18:32:48 +01:00
rdb 3d7fcf2ce9 Merge branch 'master' into deploy-ng 2018-11-12 18:31:43 +01:00
Sam Edwards a9dfd8352e general: Distinguish local/system includes
This changes includes so that local includes are consistently
#include "localFile.h"
while system and third-party includes are consistently
#include <systemFile.h>

This commit mostly converts the former to the latter; the two
exceptions are in android_main.cxx and fmodAudioSound.h, where
the reverse was necessary.
2018-11-10 18:00:10 -07:00
Mitchell Stokes d9256755e3 deploy-ng: Allow setting build_apps command line options via bdist_apps command line options 2018-11-03 12:32:29 -07:00
Mitchell Stokes a42ebaea74 deploy-ng: Allow platforms to be specified on the command line
This makes it easier to build for one platform even if multiple
platforms are specified in setup.py/cfg. For example:

python setup.py build_apps -p win_amd64

Or, for multiple platforms:

python setup.py build_apps -p win32,win_amd64
2018-11-03 12:13:51 -07:00
rdb 55371e0aad deploy-ng: fix some issues finding relative library deps in wheels
In particular, this fixes deploying with numpy for macOS, since the numpy whl has library dependencies with .. in the path.
2018-10-28 21:20:46 +01:00
rdb 305621338f deploy-ng: fix wrong platform tag for 32-bit Linux in bdist_apps 2018-10-28 20:47:44 +01:00
Mitchell Stokes 18c1e242f8 deploy-ng: Include all encodings by default
For Python 3.7 on 64bit Linux, this adds about 300-400KB to built
applications.
2018-10-17 22:21:41 -07:00
Mitchell Stokes 6f311007f5 deploy-ng: Do not error if the panda3d wheel has no localtag 2018-10-17 22:08:00 -07:00
rdb ed489ac03a deploy-ng: fix egg2bam error handling on Python 2.7 2018-10-16 23:03:44 +02:00
Mitchell Stokes 665bdb16ea deploy-ng: Add options for using optimized wheels for panda3d
This works by adding extra index urls. Optimized wheels have local
version tags that should take precedence over non-optimized wheels. If
no optimized wheel if found for a platform, a warning is issued and a
non-optimized wheel is used instead.
2018-10-08 18:36:23 -07:00
Mitchell Stokes 90b0f501dc deply-ng: Add libedit.*.dylib to list of macOS system libraries 2018-10-07 12:31:17 -07:00
Mitchell Stokes 33e6b6bf7a deploy-ng: Setup system dependencies to ignore on Linux and macOS 2018-10-04 22:07:34 -07:00
Mitchell Stokes 3dbdb55782 deploy-ng: Initial NSIS installer support
This creates a Windows installer. Still TODO:

  * Dealing with creating shortcuts
  * Add license information to installers
  * Possibly tweak various names (e.g., display names, version numbers,
  etc.)
  * Application does not show up in Windows 7 list of programs in the
  control panel (still has an uninstaller in the start menu)
  * Add all built binaries to Start Menu
2018-09-24 19:51:38 -07:00
Mitchell Stokes a2cb552375 deploy-ng: Only pass optimize=2 to compile() if the Python version is >=3.2
Fixes #388
2018-09-10 20:04:08 -07:00
Mitchell Stokes 54655240b6 deploy-ng: Allow users to define custom package_data_dir items
These are data (i.e., non-code) items copied for modules.
2018-09-07 20:13:07 -07:00
Mitchell Stokes 9dd29d7ac0 deploy-ng: Improve error reporting for egg2bam 2018-09-07 19:59:14 -07:00
Mitchell Stokes 1983382b3b deploy-ng: Improve file_handler API
User-defined file handlers are added to a dictionary of default handlers
(just has egg2bam for *.egg files for now). Any user-provided file
handlers for a given file type will overwrite default file handlers.

This allows users to define file handlers without having to re-add
egg2bam to the list.
2018-09-07 19:57:14 -07:00
Mitchell Stokes 2486b12a14 deploy-ng: Support generating a requirements.txt file via pipenv 2018-08-19 14:31:31 -07:00
Mitchell Stokes 53dea28f53 deploy-ng: Remove docstrings from frozen modules 2018-08-18 21:31:12 -07:00
Mitchell Stokes 0fd1250142 deploy-ng: Fix execute permission bits for tarball installers created on Windows 2018-07-15 12:07:22 -07:00
Mitchell Stokes f3e87a0d01 deploy-ng: Create zip installers without first creating a temporary directory 2018-07-15 12:07:22 -07:00
Mitchell Stokes 7a0004172a deploy-ng: Fix cefpython3 on Windows 2018-06-26 20:26:30 -07:00
Mitchell Stokes a17751adcf deploy-ng: Avoid interactive prompt on packages fetched via a VCS 2018-06-26 19:12:16 -07:00
Mitchell Stokes ca812b890c deploy-ng: Add initial support for cefpython3 2018-06-25 21:14:00 -07:00
Mitchell Stokes dd9a7f31ec deploy-ng: Ensure sys.frozen is defined in frozen applications 2018-06-25 19:50:01 -07:00
Mitchell Stokes 8c5c2c3c7d deploy-ng: Add package data hooks for jsonschema 2018-06-25 18:20:41 -07:00
Mitchell Stokes ffe776b8f9 deploy-ng: Support pktutil.get_data() on Python 3
Python 2 should already work.
2018-06-25 18:20:41 -07:00
Mitchell Stokes 0253a7a29f deploy-ng: Remove dist.setup()
This was a hack used by installation methods that did not support
registering new commands correctly. The commands should now work
regardless of installation method (wheel, deb, NSIS installer, etc.).
2018-06-25 18:20:41 -07:00
Mitchell Stokes d9885e4f1b deploy-ng:Fix parsing bdist_apps.installers from setup.cfg 2018-06-25 18:20:41 -07:00
rdb b6f2919420 deploy-ng: make Tkinter work for Windows non-cross-builds
This is only a temporary solution, since this only supports one platform.  We may have to pack the .tcl files into the panda3d .whl archive.
2018-05-13 23:39:30 +02:00
rdb d00109452a deploy-ng: set __file__ for all frozen modules (using import hooks)
Many thirdparty libraries rely on __file__ being set properly, for example to be able to locate data files, so it is easiest to just set this to something remotely sensible (like the executable path).
2018-05-13 23:37:40 +02:00
rdb 5322811e08 deploy-ng: be lenient when processing DLLs with invalid codepage 2018-05-13 23:35:52 +02:00
rdb ef69e8935f freezer: add mechanism for overriding modules with custom code 2018-05-13 23:35:00 +02:00
rdb f34d4c4851 deploy-ng: add hidden imports for matplotlib 2018-05-13 23:32:46 +02:00
rdb 126f4bc418 deploy-ng: copy over data directories for matplotlib 2018-05-13 23:30:14 +02:00
rdb 229e1a1b1f deploy-ng: fix building a Linux build from Python 2.7 on Windows 2018-05-13 23:26:55 +02:00
rdb e292fedd91 deploy-ng: add .libs directory in .whl to search path
This seems to be a convention imposed by auditwheel and used by numpy.
2018-05-13 22:56:44 +02:00
rdb ea351da50c deploy-ng: fix issue with irrelevant wheels in cache dir being used
This is still not a perfect solution, since eg. the wrong version of a package may still be used if older versions are still in the __whl_cache__ directory.  We may want to look into using pip to resolve the package versions, or do something clever such as automatically remove cached wheels if a newer version of the same package was downloaded.
2018-05-13 22:56:11 +02:00