21873 Commits

Author SHA1 Message Date
sean5470
9e8060d402 Moved MAX plugin line to MAX instead of Maya section
Moved the search line for .ms files from the Maya section, to the MAX section where it should be.

Closes: #214
2017-12-16 21:05:57 +01:00
rdb
29f50be15e Fix bug: copy-to-ram depth texture binding gets format set to RGB
This was a regression introduced by be8f4de33789cbb96551bb34b1ba85e7134d1e73

Fixes: #212
2017-12-16 21:03:08 +01:00
deflected
e4a817b469 Loader: Fixed crash when canceling async loading of model
- Clean up the _loader after we clean up the requests,
        not before that

Signed-off-by: deflected <deflected@users.noreply.github.com>
2017-12-13 13:42:29 +02:00
rdb
9bfc425b75 Fix assertion when rendering bounding volumes (broken since 6f8b379) 2017-12-12 23:27:51 +01:00
rdb
193e4b5f59 interrogate: clean py_panda.h; use macros to access Dtool_PyInstDef 2017-12-12 23:03:38 +01:00
rdb
18678214ae interrogate: pass "args" tuple to function that takes PyObject *args 2017-12-12 16:20:59 +01:00
rdb
3e83f8c65e Fix priority argument ignored in NodePath::set_shader_input 2017-12-12 15:25:21 +01:00
Mitchell Stokes
e504a49380 deploy-ng: Add initial support for creating .app bundles for macOS
The actual bundling is currently commented out in the bottom of
build_apps.build_runtimes(). Generating the .app was tested from a Linux
host and looks mostly correct upon a visual inspection of the contents.
However, no testing was done for actually running the .app on macOS,
which is why it is commented out. This was also not tested on Python 2.

There are also some TODO comments that need to be addressed.
2017-12-05 21:13:03 -08:00
Mitchell Stokes
e4730dca00 deploy-ng: Error if both gui_apps and console_apps is empty 2017-12-05 21:10:10 -08:00
rdb
46189dc1bf Compile fix for macOS build
[skip ci]
2017-12-04 22:52:23 +01:00
deflected
bdd53d60fc ShowBase: Fixed crash when want-render2dp is False
- Fixed crash in ShowBase when want-render2dp setting
        is set to 0(False).

Signed-off-by: deflected <deflected@users.noreply.github.com>
2017-12-04 22:46:30 +01:00
deflected
7a46b2ca60 ShowBase: Minor fixes over aspect ratio and size calculations
- Do not take into accound SBS if it is not enabled
        - Always return value for getSize()
        - Properly handle SBS for window-events
        - Redo positioning of aspect2d(p) markers exactly as
        they are created when adjusting aspect ratio

Signed-off-by: deflected <deflected@users.noreply.github.com>
2017-12-04 22:46:22 +01:00
rdb
2e20a0f16e Implement awaitable thread-safe future for async operations
This introduces AsyncFuture as a new base class of AsyncTask.  It's modelled after asyncio's Future class, except that it is thread-safe and you can use result() to block the current thread waiting for the future to finish (of course this is not necessary for use with coroutines).

AsyncFuture should be used for any operation that finishes in the future, to get the benefit of awaitability within coroutines as well as a standard interface for querying status and results of the operation as well as cancelling it.  As such, it's been implemented in various places, including texture.prepare() and win.trigger_copy().

Note that AsyncFuture is intended to be used *once*; it cannot be used more than once.  As an example of how this works, tex.prepare() will return the same future as long as the prepare isn't complete, but when it is done, subsequent calls to tex.prepare() will return a new future.
2017-12-04 22:25:28 +01:00
Mitchell Stokes
6105f386c0 deploy-ng: Add a mechanism to FreezeTool for "hidden" imports
For now we have hooks for PyTest and pkg_resources.
2017-12-03 17:24:53 -08:00
Mitchell Stokes
cd102e6f09 deploy-ng: Add libbz2, libz, and liblzma to the manylinux1 ignore list 2017-12-03 17:24:53 -08:00
Mitchell Stokes
16255d528e deploy-ng: Lock tests app to pytest 3.2.0
pytest 3.3.0 brings in a pluggy dependency that cannot be satisfied with
wheels.
2017-12-03 17:24:53 -08:00
rdb
f54b8be676 Separate out Python compat hacks from py_panda.h into py_compat.h 2017-12-03 15:48:02 +01:00
Mitchell Stokes
d90e59ca2d Merge branch 'master' into deploy-ng 2017-12-02 18:36:47 -08:00
Mitchell Stokes
0dd8f15595 deploy-ng: Remove unused build_apps.copy_paths 2017-12-02 12:22:18 -08:00
Younguk Kim
3abf3a0c88 Add HAVE_PYTHON macro to build without python 2017-11-28 13:04:57 +09:00
rdb
27f20c80fd Don't include dlmalloc_src.cxx in interrogate
Fixes: #200
2017-11-27 18:49:28 +01:00
rdb
69b3468b2c interrogate: more improvements to seq/map wrappers
Gets rid of properties defined as both MAKE_SEQ_PROPERTY/MAKE_MAP_PROPERTY, which are just a bad idea. Instead, adds a way for map properties to define a separate "keys" interface.

Fixes: #203
2017-11-27 17:29:50 +01:00
Mitchell Stokes
08e18ce802 deploy-ng: Rename build_scripts to file_handlers 2017-11-26 15:50:40 -08:00
Mitchell Stokes
8f6d75e017 deploy-ng: Pass build_apps commands to build_scripts
This allows build_scripts to access configuration.
2017-11-26 15:37:37 -08:00
Mitchell Stokes
305f39ba62 deploy-ng: Remove check for non-empty platforms list in build_apps::finalize_options()
This is actually a supported use-case (we fall back to the Panda3D
platform when no platforms are listed).
2017-11-26 15:34:19 -08:00
Mitchell Stokes
905b15df01 deploy-ng: Rename some options
* include_paths -> include_patterns
  * exclude_paths -> exclude_patterns
  * deploy_platforms -> platforms
2017-11-26 15:33:00 -08:00
rdb
567463eab3 makepanda: look for vorbis library without _static suffix
Fixes: #202
2017-11-26 23:42:46 +01:00
Mitchell Stokes
33fd302a8e deploy-ng: Add files to build application out of the unit tests
This will be a good way to make sure everything in the tests work under
a frozen environment.

NOTE: The application builds and runs, but no tests are collected. We
still need to figure out how we want to handle tests. Freeze them all
and modify test collection? Add py/test files to the build directory and
try to run them?
2017-11-25 17:36:02 -08:00
rdb
3be22679a4 display: also avoid getting more than 24 color bits if 0 were requested
See issue #197
2017-11-26 00:06:03 +01:00
Mitchell Stokes
fcb1d9308b Merge branch 'master' into deploy-ng 2017-11-25 14:58:25 -08:00
Mitchell Stokes
aba26bd862 Merge branch 'master' into deploy-ng 2017-11-25 14:55:47 -08:00
rdb
749b23a190 Fix support for pickling NodePaths (broken in 1b1d80c)
Fixes: #199
2017-11-25 23:12:47 +01:00
Mitchell Stokes
6fc26922de deploy-ng: Use callbacks for build_scripts 2017-11-24 20:24:10 -08:00
rdb
dac08490ee deploy-ng: implement getting executable path on Linux and macOS 2017-11-24 23:43:15 +01:00
rdb
409b241b40 Fix compile errors 2017-11-24 22:38:51 +01:00
rdb
d755de849c deploy-ng: new extensible blob format with PRC configurability 2017-11-24 21:48:18 +01:00
rdb
a7e00d0ee6 makewheel: use platform from build 2017-11-24 17:48:25 +01:00
rdb
e03c249cc5 makepanda: write target platform to file, rebuild if platform changes 2017-11-24 17:47:51 +01:00
Mitchell Stokes
883c6555ec deploy-ng: Add prints for progress in build_apps
Also, print out the platform when we fail to get a panda3d wheel.
2017-11-23 12:53:56 -08:00
Mitchell Stokes
6acbeb8176 deploy-ng: Fix error when running bdist_apps 2017-11-23 12:53:36 -08:00
Mitchell Stokes
e827120e46 deploy-ng: Do not warn about missing manylinux1 system libraries 2017-11-22 18:46:51 -08:00
Mitchell Stokes
ffdac54a0b deploy-ng: Switch copy_paths to include_paths and rename_paths 2017-11-22 18:44:07 -08:00
rdb
bec9ff8a40 loader: fix UB in try_load_file when loading file without known type 2017-11-23 01:15:44 +01:00
Mitchell Stokes
214b67c3c0 deploy-ng: Convert .egg to .egg.bam instead of .bam 2017-11-22 15:39:34 -08:00
Mitchell Stokes
949214834c deploy-ng: Fix error when build directory is missing 2017-11-22 14:02:30 -08:00
Mitchell Stokes
a8d1e9444b deploy-ng: Fix build_apps user options 2017-11-22 13:15:40 -08:00
rdb
39dba025b7 deploy-ng: fix library suffix being stripped on FreeBSD 2017-11-22 21:42:17 +01:00
rdb
82ced9900e deploy-ng: allow using setup.cfg instead of setup.py 2017-11-22 20:57:03 +01:00
rdb
80b6021d22 deploy-ng: don't warn about missing Windows system libraries 2017-11-22 20:05:50 +01:00
rdb
da2ad0f0bc deploy-ng: default to ACP if console codepage codec wasn't frozen
This is necessary because when Python is initialized, it takes the codec to use from GetConsoleCP() and GetConsoleOutputCP() without bothering to check whether the given codec is available.  However, in most cases, the console codepage will be the same as the ANSI codepage (ie. GetACP()) which is always supported by Python via the 'mbcs' codec.

So what we do is we check whether the console codepage is frozen in, and if not, we set the console codepage to the ANSI codepage and set the stdin/stdout/stderr encoding to 'mbcs'.

This is still not a perfect solution because the ACP may not be able to encode all characters that the application is printing, which would still result in unexpected errors.  Ideally, we'd pull in Python 3.6's _io._WindowsConsoleIO class, which bypasses this whole mess by directly using the wide-character Windows APIs to write to the console.
2017-11-22 19:33:17 +01:00