Commit Graph

7793 Commits

Author SHA1 Message Date
rdb 22d50297a2 actor: fix makeSubpart on models with pre-bound animations
Fixes #647
2019-07-18 20:18:22 +02:00
rdb 3a7ab6c319 Merge branch 'release/1.10.x' 2019-07-15 19:51:19 +02:00
pythonengineer 46a3a72029 PythonUtil: weightedChoice should throw IndexError on empty list
Also includes a unit test.

Closes #682
2019-07-15 19:39:31 +02:00
Sam Edwards 1bd15dad60 CMake: Manually set p3distributed's linker language
It doesn't contain any source files anymore (see last commit),
so for non-metalib builds, this is necessary for CMake to
understand how to invoke the linker/archiver.
2019-07-10 15:39:46 -06:00
Mitchell Stokes 1a03d997b2 Remove support for Miles audio system
See #440 for discussion on why this is being removed.

Closes #660
2019-07-10 14:13:36 +02:00
rdb d5788d9422 Merge branch 'release/1.10.x' 2019-07-10 12:22:56 +02:00
rdb 2c9d16f62e ParticlePanel: set reasonable max values for integer sliders
Fixes #672
2019-07-10 12:01:55 +02:00
Sam Edwards e3cd658642 CMake: C++ code in direct.distributed should be an extension
This code is so heavily dependent on Python (and makepanda
doesn't even build it into libp3direct) that we shouldn't
even try to put it in the libp3direct library ourselves.
2019-07-07 16:09:52 -06:00
Donny Lawrence f0b4d7637b CMake: Separate composite files by extension. 2019-06-27 17:38:18 -06:00
wezu 617f3f7c7b
Snake-case aliases for BufferViewer
Add snake_case aliases for BufferViewer
2019-06-16 12:01:54 +02:00
rdb 1302b215ea Merge branch 'release/1.10.x' 2019-06-07 22:18:26 +02:00
Fireclaw 387b43adde dgui: Fix popupMarker_pos related crash
Set initial popupMarker position to previous default by using None as default
2019-06-07 22:13:25 +02:00
Sam Edwards 039f5af34e Merge branch 'master' into cmake 2019-06-03 23:12:23 -06:00
rdb 2e9395b766 Merge branch 'release/1.10.x' 2019-05-14 14:41:43 +02:00
rdb 7b77888e5a FilterManager: allow specifying custom fbprops in renderQuadInto
Corollary to ea0210640c (see #599)
2019-05-13 14:25:22 +02:00
rdb e8fc76747a showbase: rename attachInputDevice gui=True arg to watch=True
It describes more accurately what it does, which is attach the MouseWatcher to it.  Though it was intended to help with GUI navigation, it can also be used for eg. polling button states.
2019-05-13 13:53:33 +02:00
rdb 3f312eccd9 Merge branch 'release/1.10.x' 2019-05-12 21:03:14 +02:00
rdb c4a01ac564 pipeline: give Mutex and ReMutex more Pythonic semantics
This allows using mutices in with-blocks and wraps up the functionality of acquire() and try_acquire() into a single acquire(blocking=True).

Furthermore, the GIL is no longer released in cases of no contention.
2019-05-12 20:58:13 +02:00
rdb b8b6f2f2dc showbase: fix BufferViewer error when opening window right away 2019-05-09 19:18:25 +02:00
rdb 11808862f2 showbase: fix BufferViewer when main window is opened later
Fixes #648
2019-05-09 18:45:38 +02:00
rdb a92dce29cc Merge branch 'release/1.10.x' 2019-05-03 21:03:49 +02:00
rdb db00baa230 deploy-ng: add link to index for thirdparty wheels
This is where we can host wheels for packages that haven't uploaded wheels for all platforms, such as PyYAML and esper.

[skip ci]
2019-05-03 17:57:27 +02:00
rdb 541a2a73f0 showbase: allow attaching default MouseWatcher in attachInputDevice
This makes it easier to control GUIs using a gamepad.
2019-05-03 16:24:13 +02:00
rdb ea0210640c FilterManager: allow specifying custom fbprops in renderSceneInto
Fixes #599
2019-05-03 16:24:13 +02:00
rdb b08e38cf3d deploy-ng: add nag screen warning users who are still on Python 2
See #602
2019-05-03 16:24:13 +02:00
rdb 0ac36185a9 Merge branch 'release/1.10.x' 2019-05-02 21:34:25 +02:00
rdb 6d9b217c2c tkwidgets: fix exceptions hovering over rgbPanel menu items 2019-05-02 16:18:22 +02:00
rdb a3b4486ef3 tkpanels: fix a few exceptions in AnimPanel 2019-05-02 16:18:09 +02:00
rdb f32dc3cf2b tkpanels: add missing AnimPanel imports 2019-05-02 16:17:17 +02:00
Maverick Liberty 4d33db2028 DirectOptionMenu: Fix popup menu reset of the popup marker's pos
Also defines popupMarker_pos and raises an assertion error if #showPopupMenu() is called when no items have been specified.

Fixes #636
Closes #637
2019-05-01 17:23:04 +02:00
nate97 d786709a49 sfxplayer: fixes bug when using the "node argument" in SoundInterval, also fixes Py3 TypeError exception
Closes #640
2019-05-01 17:17:06 +02:00
Sam Edwards 6097d34ead CMake: Neatly format everything for readability and consistency 2019-04-14 22:37:18 -06:00
Sam Edwards 671f15e052 Merge branch 'master' into cmake 2019-04-13 17:29:44 -06:00
rdb 552916efea Merge branch 'release/1.10.x' 2019-04-09 13:31:51 +02:00
rdb d89da168bb PythonUtil: fix use of types.InstanceType in Python 3 in itype()
Really, though, don't use this function.  It does not consider new-style classes, is not consistent in its return values and it seems to do nothing that repr(type(x)) doesn't do.
2019-04-09 12:53:13 +02:00
rdb 9f9665e090 direct: don't use types.InstanceType in Messenger.detailedRepr
Fixes #591
2019-04-09 12:42:06 +02:00
rdb bf8a959d60 direct: remove multi-line strings with unrunnable test code 2019-04-02 22:45:25 +02:00
Christopher Snow b06b5791ca Task: Couple two clauses which execute the same logic.
Closes #589
2019-03-29 12:18:37 +01:00
Sam Edwards f8161cc529 Merge branch 'master' into cmake 2019-03-12 02:03:16 -06:00
rdb 8d1bdf0118 Merge branch 'release/1.10.x' 2019-03-10 20:49:52 +01:00
rdb 088b90e887 TexMemWatcher: fix compatibility issues with Python 3
Closes #578
2019-03-10 20:21:54 +01:00
rdb cbb3c182a5 Merge branch 'release/1.10.x' 2019-03-04 16:57:52 +01:00
rdb 58df4064da ParticlePanel: fix Pmw error spam when hovering over File menu items
Fixes #552
2019-03-04 14:23:33 +01:00
Derzsi Dániel c337e58f4d direct: Resolve DirectScrolledFrame crash on destroy
Destroying DirectScrolledFrames currently crashes the game, because they are destroyed twice. This commit makes sure to destroy the scrolls only once.

Closes #574
2019-03-04 12:18:21 +01:00
rdb 73873ba767 direct: remove obsolete FindCtaPaths module 2019-02-20 23:11:37 +01:00
rdb 6d927aaa52 Merge tag 'v1.10.1' 2019-02-14 23:21:57 +01:00
rdb b75982a610 interval: fix QuatInterval not normalizing the start quaternion 2019-02-14 19:18:14 +01:00
rdb 6640e5698d EventManager: various microoptimizations to Python event handling 2019-02-12 14:30:04 +01:00
rdb 80bb5c09fe Merge branch 'release/1.10.x' 2019-02-12 01:13:56 +01:00
rdb 3024e6daeb direct: fix various syntax warnings in Python 3.8 2019-02-11 23:35:56 +01:00
tc 33d11dba27 ParticlePanel: fixed an issue that prevented saving with Python 3
Since in Python 3 `str == bytes` no longer holds true, I modified
the source to write a text file, which it actually is, instead of a
binary file.

Closes #553
Fixes #543
2019-02-08 15:46:52 +01:00
rdb 86c266fd88 Merge branch 'release/1.10.x' 2019-01-31 00:58:29 +01:00
John Cote 2627c433d6 particles: Import SpriteAnim in Particles.py
Fixes #544
Closes #545
2019-01-31 00:06:34 +01:00
rdb d8891674e3 Merge branch 'release/1.10.x' 2019-01-23 23:28:28 +01:00
rdb 9d12a4c437 general: improvements to doxygen API reference:
* In C++ reference, only pick up classes defined in .h file
* Add a few excludes to C++ reference that aren't public API
* On class index pages, reduce number of columns
* Add @since for some methods/classes that are new in 1.10.0
* Fix/improve a few docstrings here and there
2019-01-23 22:24:02 +01:00
rdb fc90ca7fdf Merge branch 'release/1.10.x' 2019-01-20 17:02:15 +01:00
LD 1389ada384 setuptools: os.makedirs does not support 'exist_ok' parameter in Python2
Closes #540
2019-01-19 22:56:54 +01:00
rdb 9d0b074162 Merge branch 'release/1.10.x' 2019-01-09 23:09:17 +01:00
rdb 649372d333 Loader: work around Python 3.7 await headache caused by PEP 479
Generators can no longer raise StopIteration, and we are supposed to use "return" instead.  But, return with value inside generator is a syntax error in Python 2.

Fixes #513
2019-01-09 22:14:50 +01:00
rdb 7262f16ed8 tkwidgets: fix missing import from Valuator module
Fixes #519
2019-01-09 19:24:45 +01:00
Kyle Smith 8cf28e8d2c wx: Fixed deprecation warnings/errors
- Warnings/Errors associated with LevelEditor.
2019-01-06 18:54:08 -07:00
Kyle Smith 4f548889a8 leveleditor: Use panda3d.core 2019-01-06 18:54:08 -07:00
Kyle Smith 294dc5fc40 leveleditor: Fixed relative import for start
- Relative imports only work within modules, not in scripts (as LevelEditorStart is expected to be called directly, not imported).
2019-01-06 18:54:08 -07:00
Sam Edwards 1a17808991 Merge branch 'master' into cmake 2019-01-06 15:37:07 -07:00
rdb 2da791b9fb Audio3DManager: fix regression with setSoundVelocityAuto() 2019-01-06 09:32:41 +01:00
rdb 6e730a2e95 Audio3DManager: accept tuple in setSoundVelocity/setListenerVelocity 2019-01-06 09:32:41 +01:00
Mitchell Stokes 863e25b6e0 setuptools bdist_apps: Better support relative paths for --build-base option 2019-01-04 18:55:04 -08:00
rdb 4d6b7e96c9 directscripts: change doxygen reference color scheme 2019-01-03 16:01:10 +01:00
rdb 984f83d94b directbase: fix a stray pandac.PandaModules 2019-01-03 16:01:06 +01:00
rdb 3e22578529 New branding images for 1.10.0 2019-01-03 14:44:17 +01:00
Mitchell Stokes 3be7c63d42 setuptools build_apps: Add p3assimp to the check_plugins list
This gets rid of the runtime error message about missing Assimp.
2019-01-02 20:29:21 -08:00
Sam Edwards 3b194c75e4 Merge branch 'master' into cmake 2018-12-28 22:15:44 -07:00
rdb 01915a36db Merge branch 'master' into deploy-ng 2018-12-26 23:41:50 +01:00
rdb b7e7986198 deploy-ng: rewrite relative dependencies in macOS dylibs 2018-12-26 23:18:17 +01:00
rdb 3a2a29a1aa deploy-ng: catch more egg2bam errors with Python 2.7 2018-12-26 22:54:19 +01:00
rdb 6b27dae24d deploy-ng: add hidden imports for numpy on macOS 2018-12-26 22:54:01 +01:00
Mitchell Stokes 950ffd6eb8 deploy-ng: Add https://archive.panda3d.org/simple/opt as an optimized wheel index for release builds
Fixes #469
2018-12-24 12:05:39 -08:00
rdb d28e99db82 directscripts: some fixes for C++ API reference 2018-12-23 16:24:38 +01:00
rdb c0c202a423 directscripts: bring Python documentation generation up-to-date
Fixes #484
2018-12-23 15:50:00 +01:00
rdb a0a2bf59bb actor: remove commented-out code that is confusing doxygen 2018-12-23 15:42:43 +01:00
rdb 0668509791 stdpy: remove commented-out method that is confusing Doxygen 2018-12-23 15:42:31 +01:00
Mitchell Stokes 88fc3d4ca3 deploy-ng: Add --skip-build and --dist-dir options to bdist_apps
dist-dir defaults to 'dist' like sdist and bdist_wheel, which makes
bdist_apps more consistent with the rest of the Python ecosystem.
2018-12-22 14:13:40 -08:00
Mitchell Stokes ec3c2ad25a deploy-ng: Add __init__.py to direct.dist 2018-12-19 18:52:09 -08:00
rdb 92539a3107 dcparser: rebuild dcParser.{cxx,h}.prebuilt 2018-12-19 13:14:21 +01:00
rdb e4f493b872 dcparser: use vector_uchar for blobs, step towards Python 3 compat
Closes #298
2018-12-19 12:45:32 +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 3a3cb01148 showbase: return Transitions fade to aspect2d, fix focus issue
This implements a slightly different solution for #311 that maintains the behaviour for the fade screen to prevent clicks from propagating to the geometry below it.

Fixes #475
Fixes #311
2018-12-16 18:43:31 +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
Sam Edwards c50bf63aee CMake: Fix showbase build error on macOS 2018-12-11 18:28:12 -07: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
Sam Edwards 99fee1a64d CMake: Assign COMPONENT and EXPORT to all targets 2018-12-06 17:48:44 -07:00
rdb 192913bf8e freezer: work around Python modulefinder bug (bpo-35376) 2018-12-02 16:26:47 +01:00
rdb c560c502b9 Merge branch 'master' into deploy-ng 2018-12-01 22:14:01 +01:00
rdb 7ed8b01a84 Merge branch 'input-overhaul' 2018-11-30 22:04:13 +01:00
rdb d7124d4df4 Merge branch 'master' into deploy-ng 2018-11-29 12:57:49 +01:00
Sam Edwards df805bd02b Merge branch 'master' into cmake 2018-11-28 21:54:58 -07:00
Sam Edwards 8df53698f4 CMake: Add missing .h/.I files that weren't getting installed 2018-11-28 16:13:05 -07:00
rdb 97d4e32a06 general: use nassert_raise instead of nassertv(false) et al
Even a brief error message in the assertion is infinitely more useful to a user who is not at home in the source code, especially for assertions that may reasonably be triggered by honest user mistakes.
2018-11-28 17:35:20 +01:00
rdb 26fcf131c9 Merge branch 'master' into input-overhaul 2018-11-25 17:10:31 +01:00
rdb b1eec5fae0 CommonFilters: give passes a unique name for debugging/PStats 2018-11-20 00:39: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
Sam Edwards 6b26889e7e Merge branch 'master' into cmake 2018-11-12 15:41:42 -07: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
rdb 70bfe21a63 Merge branch 'master' into input-overhaul 2018-11-06 22:10:39 +01:00
Sam Edwards a6877a6def Merge branch 'master' into cmake 2018-11-03 22:55:13 -06:00
rdb a799bcaec9 Merge branch 'master' into deploy-ng 2018-11-03 22:51:32 +01: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 5ac3cf3fc6 Eliminate C++ DConfig; replace it with a Python compatibility shim 2018-11-02 23:27:07 +01:00
Sam Edwards 62f7aabe91 Merge branch 'master' into cmake 2018-11-01 22:33:04 -06:00
rdb 14411f592e Remove obsolete .init files in configfiles directories
These look like they were part of some now-defunct Disney tool.
2018-11-01 16:26:07 +01:00
rdb 357b6d3093 Merge branch 'master' into input-overhaul 2018-10-29 23:40:46 +01: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
Sam Edwards 58c065d970 Merge branch 'master' into cmake 2018-10-28 05:11:14 -06:00
Mitchell Stokes b16f9f8f4f Merge branch 'master' into deploy-ng 2018-10-18 17:58:21 -07:00
rdb f8b47dc14c direct: fix slowness in big games with Func(messenger.send) 2018-10-18 22:19:55 +02: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
Sam Edwards b3f1b7d40b Merge branch 'cmake' of https://github.com/treamology/panda3d into cmake
# Conflicts:
#	.travis.yml
#	direct/src/showbase/CMakeLists.txt
#	dtool/dtool_config.h.in
#	dtool/src/prc/CMakeLists.txt
#	panda/src/cocoadisplay/CMakeLists.txt
#	panda/src/express/CMakeLists.txt
#	panda/src/osxdisplay/CMakeLists.txt
2018-10-14 02:26:56 -06:00
Sam Edwards f1c5352cc1 CMake: Remove redundant target_compile_definitions(WITHIN_PANDA)
This is no longer needed since they should now propagate from
dcparser automatically.
2018-10-13 15:07:09 -06: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
Sam Edwards e917c54433 Merge branch 'master' into cmake 2018-09-22 15:55:59 -06:00
Sam Edwards 1520d712d4 CMake: Remove target_use_packages
Instead, let's use a PKG::PKGNAME interface library, which simplifies
the linking and also allows us to use imported libraries from
find_package in the future.
2018-09-21 10:17:05 -06:00
rdb 338b428e65 Merge branch 'master' into deploy-ng 2018-09-17 17:37:07 +02:00
rdb 76365f3ed1 showbase: make input device binding explicit, not automatic 2018-09-16 20:22:40 +02:00
rdb e30b597926 Merge branch 'master' into input-overhaul 2018-09-16 12:28:22 +02:00
rdb 822f89fadb dgui: accept arg in setText, setImage, setGeom, also add clearers
This enables the "setters" to behave in a way that people expect setters to behave.  Since `setText(None)` now does not behave expectedly, a `clearText()` has also been added to remove the text.

Closes #385
2018-09-13 21:14:04 +02: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
jspam a333353af6 Make Loader.loadSound() accept a MovieAudio instance as soundPath
This functionality seems to have inadvertently been removed by
refactoring commit 23bf9ea5.

Closes #383
2018-09-09 20:22:51 +02: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
Sam Edwards 208ecd6708 Merge branch 'master' into cmake 2018-09-02 16:06:41 -06:00
Sam Edwards fa1e1a2e63 CMake: Tidy up installation directory
Don't install "object-Configuration/" directories when
using metalibs, and also put .dll files in bin/ on Windows.
2018-09-01 11:07:55 -06:00
Sam Edwards 4695557a5d general: Don't require BUILDING_* for static builds 2018-08-31 23:54:32 -06:00
rdb 1d6c3f6486 Merge branch 'master' into input-overhaul 2018-08-26 19:03:21 +02:00
rdb 27dbad6fd9 leveleditor: add missing import 2018-08-26 14:04:19 +02:00
rdb 57b66ebeaf Merge branch 'master' into deploy-ng 2018-08-20 19:13:04 +02:00
Mitchell Stokes 2486b12a14 deploy-ng: Support generating a requirements.txt file via pipenv 2018-08-19 14:31:31 -07:00
rdb 35fff81b6a makepanda: fix missing BUILDING_DIRECT_DCPARSER
[skip ci]
2018-08-19 21:06:47 +02:00
rdb b1d2111037 express: add Datagram add_blob and add_blob32, et al.
This is for writing Python 2/3 agnostic code for writing binary data to a datagram, and reading from it using DatagramIterator.
2018-08-19 16:01:39 +02:00
Mitchell Stokes 53dea28f53 deploy-ng: Remove docstrings from frozen modules 2018-08-18 21:31:12 -07:00
Sam Edwards d94f27bedd CMake: Update dcparse(r) as latter now has EXPCL 2018-08-16 22:28:06 -06:00
Sam Edwards aea0ac4533 Merge branch 'master' into cmake 2018-08-16 22:27:49 -06:00
Sam Edwards 97d6d84ade dcparser: Add BUILDING_DIRECT_DCPARSER switch
Resolves GH #342.
2018-08-15 20:38:00 -06:00
Sam Edwards 2ab77d9a27 Merge branch 'master' into cmake 2018-08-14 21:59:45 -06:00
Mitchell Stokes 49c47164ff Merge remote-tracking branch 'origin/master' into deploy-ng 2018-08-12 19:58:15 -07:00
rdb ee318a73f3 interval: prevent hypothetical stack overflow 2018-08-08 20:16:11 +02:00
bfrisby2000 7c375ac531
showbase: Add blendType argument for Fade/Iris/Letterbox
This allows the 'blendType' argument to be passed through the three transitions' Lerp Intervals.
2018-08-07 20:23:16 -04:00
rdb 0fbfeb712f ParticlePanel: comment out unimplemented OrientedParticleFactory 2018-08-02 20:31:12 +02:00
rdb f813d2fb60 stdpy: fix broken threading.Event 2018-08-02 20:29:48 +02:00
rdb 57578ee58f direct: add MetaInterval underscore aliases (fixes override bug)
These methods are supposed to override the underlying C methods, which do have underscore aliases, so it is important that the Python class defines these underscore aliases as well.
2018-07-17 22:20:35 +02:00
Mitchell Stokes e4cf73378c Merge remote-tracking branch 'origin/master' into deploy-ng 2018-07-15 14:38:05 -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 234fd675b1 Merge branch 'master' into input-overhaul 2018-06-23 23:24:09 +02:00
rdb 886e1c2f16 general: fix many compilation warnings in GCC 8 2018-06-19 00:37:28 +02:00
Sam Edwards b2bfb31114 general: Remove `using std::*` from headers
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.

Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
Sam Edwards 2e98b68e3b CMake: Make directbase/pandabase INTERFACE libraries
They export no code, and are really only used to contain several
preprocessor macros relevant to their respective packages. On
Windows, they're a problem: MSVC doesn't generate a .lib when
compiling a .dll that exports nothing.
2018-06-10 02:29:49 -06:00
Sam Edwards a088e6aba5 CMake: Autogenerate metalib init files 2018-06-10 02:29:35 -06:00
Sam Edwards c4126942f6 Merge branch 'master' into cmake 2018-06-10 02:29:21 -06:00
rdb ba2de46beb Merge branch 'master' into input-overhaul 2018-06-08 15:23:47 +02:00
Sam Edwards 7790f8429d general: Fully qualify header references into the std namespace
Closes #341
2018-06-07 10:35:12 +02:00
Sam Edwards 592a2e2d68 Merge branch 'master' into cmake 2018-06-06 13:18:12 -06:00
Donny Lawrence af6c69b474 Merge branch 'cmake' of https://github.com/panda3d/panda3d into cmake 2018-06-05 16:41:13 -05:00
Sam Edwards 5e82671084 general: Do away with TYPENAME macro 2018-06-03 16:36:34 -06:00
Sam Edwards e2b4353800 general: Replace NULL (and 0 as pointer) with C++11 nullptr
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06:00
rdb e0245d2777 First step towards eliminating `using namespace std;` (#335) 2018-06-03 20:32:23 +02:00
Sam Edwards 7e4f9b4c8e CMake: Make p3directbase a component library 2018-06-01 02:56:43 -06:00
Sam Edwards 407589873a CMake: Update some Windows-specific rules 2018-06-01 02:56:43 -06:00
Donny Lawrence 3a678fb738 Just use APPLE instead of IS_OSX for compiling in ObjC++ 2018-05-31 22:16:25 -05:00
rdb 6b726fa697 general: fix various compiler warnings and issues exposed thereby 2018-05-30 11:09:35 +02:00
Sam Edwards d0ced03ffd CMake: Build direct.motiontrail
This covers pretty much all of direct, except for directd.
2018-05-29 22:57:28 -06:00
Donny Lawrence a270b0f292 Merge branch 'cmake' of https://github.com/panda3d/panda3d into cmake 2018-05-29 22:55:21 -05:00
Sam Edwards d0ebc59d32 Merge branch 'master' into cmake 2018-05-27 14:07:05 -06:00
rdb 8c80ff1681 Audio3DManager: remove sounds when attached object is deleted
This now uses WeakNodePaths in order to prevent holding a reference to the corresponding nodes.

Closes #145
2018-05-20 18:46:27 +02:00
rdb 140644d8b6 stdpy: add Python 3 stuff to glob module, remove re dependency 2018-05-20 11:50:32 +02:00
Donny Lawrence 1b3c6fb444 Fix issue with extra flags 2018-05-19 10:30:26 -05:00
Donny Lawrence 8b51b0faeb Merge branch 'cmake' of https://github.com/panda3d/panda3d into cmake 2018-05-17 16:59:04 -05:00
Donny Lawrence beec6578c8 Fix CMake build issues on macOS. 2018-05-17 15:41:31 -05:00
Sam Edwards 6efb07de93 Merge branch 'master' into cmake 2018-05-14 19:09:14 -06: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
Mitchell Stokes bf1b486e5a Merge branch 'master' into deploy-ng 2018-05-06 11:30:01 -07:00
Mitchell Stokes ebe2588a50 Merge branch 'master' into deploy-ng 2018-05-06 11:21:13 -07:00
Mitchell Stokes 7eeb416765 deploy-ng: Remove debug print 2018-05-06 10:24:55 -07:00
Mitchell Stokes 081ceb4329 deploy-ng: Fix parsing platforms from setup.cfg 2018-05-06 09:50:17 -07:00
Mitchell Stokes 82d32e1f14 deploy-ng: Fix using lists in dictionaries when using setup.cfg 2018-05-06 09:47:02 -07:00
rdb 71eee6df3f showbase: make iris/fade/letterbox transitions awaitable
This allows using a coroutine to build up a more complex sequence including transitions (eg. scripted cutscene), as well as provide a standard way to register callbacks upon completion of the transition.
2018-05-05 23:05:50 +02:00
rdb cf58de4d04 showbase: make base.movie() awaitable (by returning a future) 2018-05-05 23:02:11 +02:00
rdb 11e21af52c showbase: fix iris/fade transitions for extreme aspect ratios
Fixes #311
2018-05-05 22:08:52 +02:00
Mitchell Stokes 52360dc10c deploy-ng: Add bztar and xztar installers 2018-04-30 20:31:54 -07:00
Mitchell Stokes 7f974865d5 deploy-ng: Subclass from setuptools.Command instead of distutils.core.Command 2018-04-30 20:27:31 -07:00
Mitchell Stokes 4b9315ef43 deploy-ng: Fix running against pip 10.0+ 2018-04-30 18:50:42 -07:00
rdb f986f8de1b showbase: add back clampScalar and PriorityCallbacks to PythonUtil
These were removed by 88dbb31daa under the assumption that they were not used, but it has recently come to my attention that there is still code out there that uses these.

PriorityCallbacks has been updated to be compatible with Python 3 by only comparing the priority, rather than the (priority, callback) tuple. This also has the side-effect of ditching the bisect dependency.

Also moves testing code from the source to the unit tests.
2018-04-21 11:43:46 +02:00
Sam Edwards 1fcb8a2748 CMake: Skip optional subdirectories in a cleaner way
Instead of wrapping the whole subdirectory's CMakeLists in
a gigantic if block, we use if(NOT HAVE_FOO) + return()

This is tidier since it keeps the indentation generally consistent
across all CMakeLists files.
2018-04-20 02:26:47 -06:00
Sam Edwards 56a6e6a80a Merge remote-tracking branch 'origin/master' into cmake 2018-04-20 01:57:46 -06:00
Sam Edwards 4cec331722 CMake: Add support for building metalibs as metalibs 2018-04-18 14:42:56 -06:00
Sam Edwards 7590c37f0c CMake: Have Interrogate respect INTERFACE_COMPILE_DEFINITIONS
This commit isn't technically quite right, since Interrogate should
use the definitions from COMPILE_DEFINITIONS but the module should
be built with INTERFACE_COMPILE_DEFINITIONS, but whatever. That can
be changed if it becomes a nuisance later on.

The rationale here is it's consistent with how CMake treats these
two properties.
2018-04-18 12:23:18 -06:00
Sam Edwards d642ca4fa0 CMake: Change linkages to go through metalibs
This changes the target_link_libraries() declarations so they only
go directly to a component library if it's in the same metalib.

If it's outside of the metalib, the correct thing to do is link against
the metalib. CMake takes care of the transitive linking for us, so
there isn't actually any big change here.
2018-04-15 01:10:21 -06:00
rdb f47857550f pefile: fix get_export_address for ordinals > 0
[skip ci]
2018-04-10 12:57:41 +02:00
rdb 742c143a01 deploy-ng: support logging via log_filename (and log_append) setting 2018-04-08 17:57:48 +02:00
rdb 023669c8c2 deploy-ng: fix absolute exclude patterns, "build" directory exclusion 2018-04-08 17:09:54 +02:00
rdb b0cece7faf Merge branch 'master' into deploy-ng 2018-04-08 15:44:32 +02:00
rdb e9ae7dcc40 Use vector_uchar instead of string for binary network/file data
This distinction allows us to better support Python 3, since it will raise exceptions when trying to put arbitrary binary data in a str object.

This also adds some convenience functions for efficiently initializing a Datagram or PTA_uchar from a vector_uchar.
2018-04-02 23:17:14 +02:00
Sam Edwards 449195a33d CMake: Define appropriate BUILDING_ symbols 2018-03-31 04:24:06 -06:00
Sam Edwards 25b13ad199 Merge branch 'master' into cmake 2018-03-31 04:23:49 -06:00
Tohka 0b1ad67e13 distributed: Fix DC file reading regression (#295) 2018-03-31 04:01:35 -06:00
Mitchell Stokes 01ae235bfb deploy-ng: Change default model-cache-dir on deployed applications
We replace panda3d in the model-cache-dir ConfigVariable with the name
from setup.py.
2018-03-30 13:42:40 -07:00
Sebastian Hoffmann 78377ca10c Cursor after newline character appears on beginning of next line.
DirectEntry.updateNumLines updates text geom.
DirectEntry API less inadequate.

Closes #257
2018-03-30 20:17:31 +02:00
Sam Edwards 4eb250cb87 dcparser: Write ranged-blob parameters correctly 2018-03-25 22:03:55 -06:00
Sam Edwards 9dd37e9dbc general: Add guards to ensure proper BUILDING_ macros defined
This is designed to sanity-check the buildsystem, ensuring that the
expected BUILDING_ macros are defined at the expected time. It
also helps catch cases where the wrong BUILDING_/EXPCL_ macros
are used.
2018-03-25 13:17:52 -06:00
Sam Edwards f231ba4cd7 directbase: Introduce BUILDING_ defines for each component
Ditto everything before, but for direct.
2018-03-25 13:17:52 -06:00
Mitchell Stokes b91cb655c3 deploy-ng: Expose default_prc_dir as a build_apps option
If not set, this defaults to '<auto>etc' if embed_prc_data is False or
'' (no default PRC dir) if embed_prc_data is True.
2018-03-22 18:38:13 -07:00
Mitchell Stokes 164ef3fa4b deploy-ng: Add options for user-supplied PRC data 2018-03-21 18:28:42 -07:00
Mitchell Stokes 4d47603e87 deploy-ng: Allow embedding PRC data
Also parse PRC data and remove lines for plugins that are not included
in the build.
2018-03-18 16:49:37 -07:00
Mitchell Stokes 7a7eca25ee deploy-ng: Only add Python files that were frozen to the ignore list
This allows copying over unfrozen Python files by adding modules to the
exclude_modules dictionary (behaves like include_modules) and then
making sure the Python file matches a pattern in the include_patterns
list.
2018-03-12 21:29:39 -07:00
rdb aebdefcf60 Merge branch 'master' into deploy-ng 2018-03-11 23:01:10 +01:00
Michael Wass b10ee32752 direct: Fix some more NameErrors
Closes #274
2018-03-08 11:44:04 +01:00
rdb b0b32b9d6a direct: fix Python 3 support in Pmw-based tools
Fixes #276
2018-03-08 11:21:14 +01:00
Michael Wass 89799bc024 direct: Fix some NameErrors
Squashed merge of GitHub PR #273
2018-03-05 18:32:27 -07:00
Sam Edwards ac8417ffdf distributed: `type(x) == types.FooType` -> `inspect.isfoo(x)`
This is more compatible across Python 2 vs. 3.

[skip ci]
2018-03-04 15:28:39 -07:00
rdb c8da53a81f deploy-ng: fix regression with builtin modules not being added
This happens only when the system Python has the module built-in (eg. on Ubuntu where most modules are builtin) but deploy-ng doesn't.

Regression was introduced by 94b5fa1e90

Fixes #264
2018-03-01 22:02:58 +01:00
Mitchell Stokes fcacc3c2be deploy-ng: librt.so.1 to libutil.so.1 to exclude_dependencies 2018-02-27 18:37:03 -08:00