Commit Graph

2282 Commits

Author SHA1 Message Date
rdb 29ea65bb3f Merge branch 'release/1.9.x' 2016-08-09 01:44:21 +02:00
rdb db97747981 cppparser: Parse nonstandard specifier order like "const static" 2016-08-09 01:27:30 +02:00
rdb 47388b0dbc Separate out CPython calls from core libs; eliminate need for pystub 2016-07-20 14:30:41 +02:00
rdb a4554a7dfe gcc build fix 2016-07-14 13:21:39 +02:00
rdb 8381118a97 Assorted tweaks and compile warning fixes 2016-07-14 12:54:39 +02:00
rdb 6f168446d0 Merge branch 'release/1.9.x' 2016-07-12 14:57:48 +02:00
rdb 69f15258e4 Fix race condition reading filename/string from config var 2016-07-12 14:47:20 +02:00
rdb 5dcaac9c75 Map size_t to int if possible. Fixes regression with __len__(). 2016-07-03 09:17:43 +02:00
rdb b3bb19180e Fix LNK4217 linker warnings on Windows 2016-06-29 19:10:50 +02:00
rdb 733456cb41 Merge branch 'release/1.9.x' 2016-06-28 02:58:47 +02:00
rdb 99f7fb6fcd Show error instead of crash when using method or property before C++ object is constructed 2016-06-28 02:58:06 +02:00
Sam Edwards 2933b8ed39 general: Fix missing includes. 2016-06-25 19:10:38 -07:00
rdb 9963fe2c3c Fix a couple of compile warnings, reduce unnecessary includes 2016-06-23 22:59:50 +02:00
rdb 7e08b87ff7 IPv6 support, improve URL handling/comparison 2016-06-22 17:57:40 +02:00
rdb 4724a7ddbc Add 1.9.3 release notes, bump version number 2016-06-22 17:22:06 +02:00
rdb 0821bec2d0 Backport 2f0bc01 to 1.9: Fix bug causing random crash during module initialization 2016-06-22 15:04:00 +02:00
rdb 4283a63a7d Merge branch 'release/1.9.x' 2016-06-11 01:29:14 +02:00
rdb ba919b0948 Fix crash running TaskTester 2016-06-11 01:11:03 +02:00
rdb 7d6b7f40f5 Merge branch 'release/1.9.x' 2016-06-09 21:52:51 +02:00
rdb b303962e96 Disable cycle detection in tasks for now, it is way too unstable 2016-06-09 16:48:31 +02:00
rdb d53b2ca80e Backport various bugfixes from master, among which:
- Fix Windows pbuffer crash on Intel cards
 - Fix crash when using pnmimage.write with unsupported format
 - Fix GLSL diagnostics on Mesa GLES2 compiler
 - Reduce warning severity when resizing immutable storage texture
 - Print more debug info when FrameBufferProperties are insufficient
 - Fix "Bam file contains objects of unknown type: MovingPart<LMatrix4f>"
 - Fix memory leak in BulletTriangleMesh
 - Fix pmerge in Python 3
2016-06-07 14:40:27 +02:00
rdb 8d05ef3022 Assorted fixes 2016-06-03 22:23:42 +02:00
rdb 08db72a2ca Update dlmalloc 2016-06-03 17:42:49 +02:00
rdb 5543716660 Interrogate wraps vector<unsigned char> as Python 3 bytes object 2016-06-03 01:47:54 +02:00
rdb 242cc5f57d Support template "using" definitions in interrogate 2016-05-31 18:48:32 +02:00
rdb 18874fa151 Replace PN_int/uint types with stdint.h types, since all compilers we support have them.
Plus, we already had code that relied on them being available anyway.
2016-05-11 00:27:58 +02:00
rdb ce29ae490d Interrogate improvements, more properties, MAKE_SEQ_PROPERTY 2016-05-11 00:16:53 +02:00
rdb fb78fe6e2a Interrogate enum class support (maps to Python 3.4 enums), sanify wrapper code 2016-05-07 00:45:26 +02:00
rdb dc09e28ed9 Also accept a .gz wherever a .pz file is accepted 2016-04-29 16:54:25 +02:00
rdb 5feecd2243 Fix iterator support in interrogate 2016-04-28 11:08:23 +02:00
rdb 2c1cb4c313 Compile fixes for latest VRPN and TIFF 2016-04-22 17:18:27 +02:00
rdb 2f0bc01b68 Fix bug causing random crash during module initialization 2016-04-18 14:34:50 +02:00
rdb 33ed30b178 Support defining bam factory functions in Python 2016-04-09 19:28:33 +02:00
rdb 15b0ba45f9 Fix broken pickling in Python 3 build 2016-03-31 16:49:27 +02:00
rdb ba4c38112c Merge remote-tracking branch 'origin/release/1.9.x' 2016-03-25 17:22:00 +01:00
rdb ce947adf8f Replace uses of "delete" with "delete[]" where appropriate 2016-03-24 23:56:12 +01:00
Sam Edwards d28608aed1 cppparser: Fix missing includes. 2016-03-15 18:30:24 -07:00
rdb f933eb4e96 Fix compile warnings (incl. "Attempt to define invalid type" spam), define _Dtool_CheckErrorOccurred in release builds for binary compat 2016-02-27 16:45:22 +01:00
tobspr 0fcfb8e372 New file headers, new comment style 2016-02-17 17:47:48 +01:00
rdb 186f1b41b2 Fix for PDWORD_PTR 2016-02-16 11:24:42 +01:00
rdb caa03c53dd Interrogate cppparser improvements, C++11/14/17 additions:
* Support trailing return type.
 * Ignore C++14 digit separators.
 * Parse C++14 binary number representations.
 * Support "using"-style type aliases.
 * Support decltype and auto with "new".
 * Remove silly "long float" and "long long float".
 * Support default visibility with class inheritance.
 * Remove -longlong hack since C++11 supports long long natively.
 * Support unary plus operator.
 * Preserve bitfield definitions.
 * Support constructor inits using braces.
 * Support override/final specifiers.
 * Ignore [[attributes]] in certain cases
 * Add support for typeid() in expressions
 * Parse (but ignore) lambda expressions
 * Differentiate between casts, add const_cast/reinterpret_cast
 * Support thread_local variables.
2016-02-16 01:18:51 +01:00
rdb ef72a0a410 Merge branch 'release/1.9.x' 2016-02-11 19:09:25 +01:00
rdb bb684b2a07 Fix a few issues with obscure CPython-based deployments 2016-02-09 12:33:57 +01:00
rdb 090e912ce6 Cleanup of comments and whitespace 2016-02-01 22:30:43 +01:00
rdb 9a38a6b075 Handle bool expressions separately in cppparser 2016-01-31 17:47:25 +01:00
rdb 8a205ac100 MAKE_PROPERTY should ignore setter overloads that take the wrong number of arguments 2016-01-25 17:02:25 +01:00
tobspr a9e18f9d24 Improve Vector implementations: - Remove unecessary assignment operators - Add normalize() method - Use properties for certain swizzle masks - Add constexpr where appropriate 2016-01-03 22:02:00 +01:00
rdb 83ed206551 Support implicitly generated copy constructor and default constructor in interrogate 2016-01-03 21:55:50 +01:00
rdb be60303502 Support =default and =delete methods in Interrogate 2016-01-03 19:56:20 +01:00
rdb 86a898b40a Tack on combining diacritics for static fonts if font doesn't specify modified letters 2015-12-31 12:48:02 +01:00
rdb bccddaf4e8 TextNode properties, fix setters that return error bool 2015-12-29 18:46:37 +01:00
rdb cdc8d7d4d9 Interrogate should pick up definitions in all files explicitly named 2015-12-26 15:24:19 +01:00
rdb e4857a58bb Add many more Python properties 2015-12-24 16:17:34 +01:00
rdb db6f0342cc Add properties with has/clear (interrogatedb v3.1) 2015-12-24 14:25:45 +01:00
rdb 6480e82e3b First pass adding properties to many Panda classes 2015-12-10 16:23:06 +01:00
rdb 4bc64d4de9 Increase version number on 1.9 branch to 1.9.2 2015-12-08 15:54:18 +01:00
rdb 50d2e8324e Merge branch 'release/1.9.x'
Conflicts:
	.travis.yml
	direct/src/directtools/DirectLights.py
	panda/src/nativenet/buffered_datagramconnection.h
2015-12-06 22:32:12 +01:00
rdb 287c44ce53 Various fixes for Python 3 versions before Python 3.3 2015-12-06 22:05:44 +01:00
rdb eb4052d7b6 Fix compile error on Python versions between 3.0.0 and 3.3.3 2015-12-06 16:20:07 +01:00
rdb 33d183d4f7 Throw ImportError instead of cryptic failure when importing extension module from incompatible version of Python 2015-11-28 19:22:57 +01:00
rdb 1b857d6bda A few interrogate improvements 2015-11-28 17:54:01 +01:00
rdb bdf91e206d Remove references to Python.h and py_config.h from Panda headers, to prevent picking up a dependency on Python libraries in third-party modules 2015-11-28 16:33:44 +01:00
rdb f6b66fc5db Fix PhysX compile issues on Mac 2015-11-25 02:01:07 +01:00
rdb 0a9f9887f9 Merge branch 'release/1.9.x'
Conflicts:
	direct/src/p3d/Packager.py
	direct/src/p3d/ppackage.py
	makepanda/makepandacore.py
2015-11-21 03:17:33 +01:00
rdb 4c61db6374 Consider non-const overload before considering const overload in Python bindings 2015-11-20 20:24:58 +01:00
rdb d3885b665e Fix static MAKE_SEQs (eg WebcamVideo.get_options(), MicrophoneAudio.get_options()) 2015-11-20 02:05:44 +01:00
rdb 853d4d0b5d Fix compile error; MSVC does not define ssize_t 2015-11-19 23:21:30 +01:00
rdb c93e50ca05 Merge branch 'release/1.9.x'
Conflicts:
	.travis.yml
	dtool/src/cppparser/cppBison.cxx.prebuilt
	dtool/src/cppparser/cppBison.yxx
	makepanda/makepanda.py
2015-11-19 18:43:13 +01:00
rdb df4c4bc250 Fix various cppparser issues parsing the VRPN headers 2015-11-19 18:35:29 +01:00
rdb 909856c75d Improve interrogate diagnostics when encountering unknown types 2015-11-19 13:07:28 +01:00
rdb a453ec1925 Overhaul text generation; now 75x as fast as before. 2015-11-13 01:44:03 +01:00
Sam Edwards 5ebb6c511f general: Fix missing includes. 2015-11-11 12:35:04 -08:00
rdb 31dbcae262 Deprecate many extension methods, make extension methods imported via modules instead of dumped into core.py, move _core.pyd and _direct.pyd back to core.pyd, direct.pyd respectively, move MAIN_DIR set-up code to module init time 2015-11-10 00:44:29 +01:00
rdb db3ab953e4 Remove ppremake, genPyCode, and all hacks created to support them 2015-11-09 19:06:49 +01:00
rdb ac1c036cac interrogatedb 3.0 to restructure make_seq, improve make_seq handling and performance 2015-11-09 18:03:30 +01:00
Sam Edwards 3b667a83ed general: Fix several missing includes. 2015-11-07 20:05:17 -08:00
rdb d1732a4dca Fix minor preprocessor bugs, particularly parsing files with CRLF 2015-11-08 02:10:38 +01:00
rdb da17cce447 Fix error and warnings in 32-bit Windows build 2015-11-01 16:57:52 +01:00
rdb 0ae2df7e02 Merge branch 'release/1.9.x' 2015-11-01 15:54:58 +01:00
rdb 63a9b5dfec Re-expose MouseWatcherGroup; clearer error message for make_seq when getter is not exposed 2015-11-01 15:45:52 +01:00
rdb 4ebbe0748d Add -nomangle flag to interrogate do disable mangled aliases of function names 2015-10-17 14:25:37 +02:00
rdb ebd1fd8462 Fix interrogate warnings on Windows. Show warnings when running makepanda in verbose mode. 2015-10-17 03:27:38 +02:00
rdb 155ae811aa Fix some edge cases for preprocessor, support auto keyword, MSVC compile fix 2015-10-17 02:54:07 +02:00
rdb 94b48d568f Pre-C++11 compilers don't seem to like std::time_t 2015-10-16 15:51:16 +02:00
rdb ddf8343590 Reorganise explicit template instantiations so that it always happens in the .cxx file, while remaining backward compatible with MSVC's standards-breaking implementation 2015-10-16 15:38:28 +02:00
rdb 920210c999 Fix the vast majority of Interrogate parse issues and warnings, add support for inline namespace and constexpr 2015-10-16 14:57:40 +02:00
rdb 6a0c98d54e Work around strange interrogate issues 2015-10-13 15:40:48 +02:00
rdb b65ad853fe Support C++11/14 features: nullptr, decltype, unicode literals, custom literals, alignof 2015-10-12 23:32:50 +02:00
rdb a43d6a45c1 Fix issue building with pre-C++11 compiler 2015-10-12 14:20:23 +02:00
rdb 51ebc564aa Provide stub implementations of several C/C++ standard headers, to make parsing thirdparty sources significantly easier 2015-10-11 16:55:46 +02:00
rdb ba45120eac Try to stay compatible with Bison 2.5 (for Ubuntu precise), support C++11 and C++17 static_assert, improve error reporting, handle several gcc keyword aliases, fix bug handling preprocessor expression in which the same manifest occurs more than once 2015-10-11 16:52:33 +02:00
rdb 1c9ff40236 Require new Bison version on Windows, fallback to prebuilt files if not present 2015-10-10 16:29:14 +02:00
rdb e327c7e978 Vastly improve quality of Interrogate error messages, also fix erroneous location indications
This change also causes Interrogate to safely ignore "register" keywords in function parameters
2015-10-10 15:15:22 +02:00
rdb 62e8106ef1 Interrogate now correctly implements C++11 semantics for closing template parameter lists 2015-10-10 04:08:00 +02:00
rdb 6feef4e230 Interrogate now parses (and ignores) explicit template instantiations 2015-10-09 13:33:05 +02:00
rdb 7738294657 Fix a few more type size issues 2015-10-07 19:10:52 +02:00
rdb 18ad6d1543 Replace many int params with size_t params where appropriate, and work towards fixing type conversion warnings 2015-10-07 18:58:26 +02:00
rdb bae5c195af Merge branch 'release/1.9.x'
Conflicts:
	dtool/src/dtoolbase/dtoolbase.h
2015-10-07 15:54:02 +02:00
rdb 706f6f7de5 Squelch some of the type conversion warnings in MSVC 2015-10-06 17:05:40 +02:00
rdb 7f3f546cdd Interrogate now parses "volatile" qualifier in instance identifiers correctly 2015-10-05 02:56:40 +02:00
rdb ca37b6b6c0 Fix VC2015 compile errors, allow selecting any WinSDK/MSVC version. All experimental, still. 2015-10-05 02:12:46 +02:00
rdb aebce2e74c Merge branch 'release/1.9.x' 2015-10-05 01:23:31 +02:00
rdb cb7a0e2520 Fix PandaSystem.getCompiler() for clang (it erroneously reported GCC) 2015-10-05 00:45:55 +02:00
rdb 893740478c Fix sporadic interrogate parser issue 2015-10-04 17:20:49 +02:00
rdb 433ed001fa Using strong CMPXCH seems necessary to avoid crash on ARM 2015-10-04 13:00:25 +02:00
rdb 30a26bc530 Match up interrogate standard typedefs better with gcc/msvc standard typedefs 2015-09-30 16:07:37 +02:00
rdb 036adff924 Merge branch 'release/1.9.x' 2015-09-30 14:07:21 +02:00
rdb a902f1628b Fix Win64 compilation 2015-09-28 13:25:17 +02:00
rdb fcd3bfd15c Fix interrogate issues with long, streampos, streamoff, streamsize and ptrdiff_t 2015-09-28 13:08:38 +02:00
rdb 759dc77ee1 Merge branch 'release/1.9.x' 2015-09-23 11:56:22 +02:00
rdb 49088fb7ce Fix some issues with new VFS open() implementation 2015-09-21 17:46:50 +02:00
rdb 1d9aff0c48 Fix wrapper for operator bool of TypeHandle 2015-09-19 14:50:59 +02:00
rdb 445c3461d6 Python 3 support to rtdist, reimplement VFS open() on top of io.IOBase, allow freezing into .c target, make VFSImporter and friends frozen into p3dpython 2015-09-18 21:20:25 +02:00
rdb 5736e7a4b0 Fix crash when passing None to Filename constructor 2015-09-18 21:19:09 +02:00
rdb 57e5c8fb25 Wrap TypeHandle and ButtonHandle as ints in C wrappers 2015-09-10 15:29:31 +02:00
rdb 20f90f35b9 Regenerate interrogatedb bindings to include interrogate_request 2015-09-07 23:31:15 +02:00
rdb d3487eba6b Set visibility attributes on all exported bindings 2015-09-07 23:31:15 +02:00
rdb 3cd15c3d48 Merge branch 'release/1.9.x' 2015-08-31 15:59:06 +02:00
rdb 56b94eb815 Don't raise exception in tp_traverse, instead silently passing case where object is already destructed 2015-08-28 16:28:03 +02:00
rdb d68bbae5b4 Don't add "(not used)" to config decls when writing them, it makes it harder to write out a config.prc file 2015-08-26 14:57:30 +02:00
rdb c0ff9d8e5f Merge branch 'release/1.9.x' 2015-08-04 18:00:35 +02:00
rdb de715b5a0e Fix inability for interrogate to parse /*c*//* and /*c*/// 2015-08-04 17:49:19 +02:00
Ed Swartz 0ee972a822 pallocator should use panda allocators even when DO_MEMORY_USAGE is not defined - fixes 32-bit Linux crash in runtime builds 2015-07-30 21:54:13 +02:00
rdb 64144955a0 Fix for typedefs to external types in interrogate 2015-07-29 10:45:55 +02:00
rdb 1f0b4332e3 Add softspace flag to StreamWriter - fixes print spaces in runtime env 2015-07-27 20:23:47 +02:00
rdb f33e450823 A lot of performance changes, particularly wrt dcasts and state management 2015-07-27 16:32:57 +02:00
rdb 75019784f4 Changes to inlining so we can use FORCE_INLINING in gcc as well 2015-07-27 15:39:46 +02:00
rdb 9178ed2871 Fix some preprocessor expressions in Interrogate 2015-07-14 21:04:50 +01:00
Sam Edwards 16bfd3750f Add missing includes. 2015-07-12 19:27:13 -07:00
rdb 5913546229 Proper overflow checking for numeric chars 2015-07-08 02:03:24 +02:00
rdb 342b9a8db8 Merge remote-tracking branch 'origin/release/1.9.x' 2015-07-08 02:01:28 +02:00
rdb 828e52578d Allow a long (provided it is not overflowing) where an int is accepted 2015-07-08 01:58:35 +02:00
rdb 1088cdedc8 Fix mac and static build issues 2015-07-06 23:31:14 +02:00
rdb cbcb2416d7 Merge branch 'release/1.9.x' 2015-07-06 10:32:30 +02:00
rdb 69b8d6a4b5 Fix memory leak in tuple-returning getters 2015-07-06 10:31:33 +02:00
rdb 7026854cc2 Fixes to get the C binding generator to work 2015-07-05 16:07:08 +02:00
rdb dd17fd864b Properly separate dtoolconfig and interrogatedb 2015-06-30 16:16:35 +02:00
rdb d9342043b0 Deprecate pandac.PandaModules and genPyCode, move extensions to panda3d/, clean up imports and deprecated behaviour 2015-06-28 13:55:31 +02:00
rdb 236b0c590c Use explicit symbol visibility control in GCC/clang 2015-06-22 21:01:34 +02:00
rdb 269b4eac27 Fix METH_NOARGS calling convention violations in interrogate, and special support for LINK_ALL_STATIC in interrogated code 2015-06-21 17:53:37 +02:00
rdb 7a836cbbd9 Merge branch 'release/1.9.x' 2015-06-21 17:46:34 +02:00
rdb a7d56f0e65 Fix compilation error when compiling Python without threads 2015-06-21 17:41:28 +02:00
rdb 8ecf6a7b9f Fix getattr() and hasattr() of vector classes when invalid attribute name is used 2015-06-21 15:33:42 +02:00
rdb 2515ea5dff Merge branch 'release/1.9.x' 2015-06-13 13:37:33 +02:00
rdb 48208b0f27 Support #pragma once in interrogate 2015-06-13 13:33:11 +02:00
rdb 11ed8a4d8d Use dynamic type lookup for interrogate to eliminate inter-module dependencies
It is now no longer necessary to link to core.pyd
Also includes a slight coercion optimization for trivial types
2015-06-06 19:36:40 +02:00
rdb 4d46172fba Revert non-Windows template export changes from 1.9.x, they're less stable than I thought 2015-06-06 16:55:33 +02:00
rdb 205e731c4a Merge branch 'release/1.9.x' 2015-06-04 12:00:25 +02:00
rdb 4a88d71ff6 Fix compile issues on Windows with rtdist build 2015-06-04 11:44:29 +02:00
rdb 9c0076a09b Bump version to 1.10.0 2015-06-03 20:47:53 +02:00