rdb
c352e92dbc
dtoolbase: Fix out-of-bounds access in pdtoa.cxx
2025-10-15 21:22:34 +02:00
rdb
86ba156a7b
py_compat: Update for Python 3.13 and 3.14
2025-08-28 11:33:12 +02:00
rdb
7d7a08e66f
cppparser: Consider reference types destructible
...
Fixes #1743
2025-07-28 11:11:32 +02:00
rdb
fcf619d606
Update version numbers to 1.10.16
2025-02-25 17:33:34 +01:00
rdb
50b984cffd
dtoolbase: Fix test failure on 32-bit Windows with pftoa
2024-10-31 23:50:27 +01:00
rdb
ff91f127bf
py_compat: Fix Python 2.7 compilation error
...
This code never actually gets compiled in Python 3
[skip ci]
2024-10-30 21:52:23 +01:00
rdb
f47b34d2a1
Fix remaining uses of ._PyType member in extension code
...
This should be replaced with Dtool_GetPyTypeObject, hiding the implementation details a bit so that we can more easily change the underlying structure if we need later
Also adds Py_NewRef to py_compat.h, backporting from master
2024-10-30 13:26:34 +01:00
rdb
0ba2aadcd6
Introduce Py_IS_TYPE, use for Py_TYPE comparisons
2024-10-30 13:17:11 +01:00
rdb
64454b1c9f
Replace direct uses of ob_type, which gives problems in nogil build
2024-10-30 13:17:11 +01:00
rdb
cdafd81764
Fix compilation issues with Python 3.13
2024-09-19 15:47:50 +02:00
rdb
78ace53dbe
dtoolutil: Fix typo in pfstream causing compiler warning
2024-08-14 19:08:49 +02:00
rdb
ddaeb05367
Fix compilation when building without bison
2024-08-14 19:08:16 +02:00
rdb
8c8cbeea98
linmath: For repr, use as much precision as needed for roundtrip
...
Will use as few digits as is necessary to ensure that round-tripping the same number with pstrtod will result in the same vector. This prevents eg. 3.3 formatting as 3.29999995 while still ensuring that two floats that are not equal (other than nan) are guaranteed to have a different string representation.
Uses a hacky pftoa function that can be abandoned as soon as we adopt C++17, which has to_chars that does what we need
Fixes #1671
2024-08-07 17:24:11 +02:00
rdb
ca7ba4eab3
py_panda: Add Dtool_GetPyTypeObject macro
...
This is a cleaner, future-proof way of accessing a Panda type as PyTypeObject pointer
2024-08-07 15:53:27 +02:00
rdb
105f938d68
interrogate: Fix non-deterministic order of external import types
...
Fixes #1651
2024-05-28 11:11:21 +02:00
rdb
80147990cc
cppparser: Fix problems with recursive expansion in preprocessor
...
Other half of #1635
2024-03-26 15:55:50 +01:00
mingodad
685b98021c
cppparser: Skip comments after preprocessor directive
...
See #1635
2024-03-26 15:54:33 +01:00
rdb
0ce7215ee9
interrogate: Fix typo in code
...
Fixes #1627
[skip ci]
2024-03-12 15:10:14 +01:00
rdb
b49dbaca2b
Report errors if calls to `close()` fail
2024-01-25 12:33:20 +01:00
rdb
26ce3eab29
Update version number to 1.10.15
2024-01-23 14:24:23 +01:00
rdb
7926a3a929
interrogate: Fix some pointless code generation case
...
Some cases of eg. inplace ternary operator would needlessly construct and then immediately destruct a tuple
2024-01-05 14:52:52 +01:00
rdb
37c9e58ea0
interrogate: Fix handling of RF_self / inplace binary operator
2024-01-05 14:32:26 +01:00
rdb
46e662bd8e
interrogate: Add cleverness to avoid writing out dead code
...
Hopefully fixes GCC 13 compile regression, see #1580
2024-01-05 13:56:02 +01:00
Mitchell Stokes
893f5ce492
Fix assert on Py_SIZE(long) when using Python 3.12
...
Starting with Python 3.12, passing a PyLong into Py_SIZE() triggers an
assertion. PyLong (and the whole C API) is transitioning to be more
opaque and expose fewer implementation details.
2023-10-13 10:54:33 +02:00
rdb
3160d7f3e9
py_panda: Don't use _PyUnicode_EqualToASCIIString in Python 3.13+
...
See #1523
2023-08-03 22:22:45 +02:00
rdb
8cbf93162a
cppparser: Backport enum scope fix to 1.10
...
From bc039a0476
2023-08-02 12:40:37 +02:00
rdb
c958919037
Make API documentation for Filename and VirtualFileSystem clearer
...
Mention specifically that Filename methods act on the physical disk whereas VirtualFileSystem methods act on the VFS
Fixes #1493
[skip ci]
2023-05-08 11:19:03 +02:00
rdb
5d833c988a
interrogate: Support explicit `cls` parameter for static methods
2023-05-05 10:55:06 +02:00
rdb
68927cad0b
interrogate: Code size reduction for generated wrappers
...
No need to have a separate entry in the string table for every possible class for this uncommon error message
2023-03-09 11:00:36 +01:00
rdb
aaabb6a652
Fix assorted issues uncovered by clang-tidy
2023-02-12 13:55:59 +01:00
rdb
a9e9cfae1c
py_panda: Fix definition of _PyErr_OCCURRED for Python >3.12.0a5
...
It should not be redefined for Python versions after 3.3.3, and if it's not defined by Python, it should just map to PyErr_Occurred()
See also #1457
2023-02-12 13:22:16 +01:00
rdb
1867094afe
Bump version number on release/1.10.x branch to 1.10.14
2023-01-09 13:25:26 +01:00
rdb
a9e5d84d27
notify: Fix crash when using set_ostream_ptr from Python
...
Also allow passing in None
Fixes #1371 (and maybe also #319 )
2022-12-09 17:34:27 +01:00
rdb
32f9054067
prc: Add `ConfigVariableFilename.__fspath__()`
...
Fixes #1406
2022-12-06 12:52:44 +01:00
rdb
d621df47ac
prc: Fix bf-cbc encryption/decryption regression with OpenSSL 3.0
...
Loads the legacy provider to continue supporting this algorithm
2022-12-04 19:22:26 +01:00
rdb
20459118e2
dtoolutil: Add XDG_STATE_HOME on Linux
2022-12-01 12:56:45 +01:00
rdb
5aad1d8404
interrogate: Change error message to mention interrogate
...
This makes it more obvious that the error is coming from interrogate when encountering a parse error in a build log
2022-11-29 20:14:33 +01:00
rdb
50cfdebd9c
pstats: Integrate Python profiler with PStats
...
Enabled with `pstats-python-profiler 1`, requires recent version of PStats server.
Currently, it is limited to the main thread only. Support for other threads may be added at a later date.
2022-11-29 16:00:09 +01:00
rdb
11746457ff
interrogate: Fix invalid syntax for `make()` coerce ctor with kwargs
...
[skip ci]
2022-11-07 18:03:41 +01:00
rdb
d8a537b59b
dtoolbase: Add comment clarifying assertion in DeletedBufferChain
...
[skip ci]
2022-10-31 19:26:59 +01:00
rdb
9a53a3bf31
cppparser: Fix an instance of pvector being used instead of `std::vector`
...
Also see #539 (but doesn't fully resolve this case because DSearchPath also uses pvector)
[skip ci]
2022-10-24 13:43:29 +02:00
rdb
dd662a6eaa
cppparser: Fix syntax error with C++11 attributes in declarators
2022-10-23 17:01:02 +02:00
rdb
bb8b08a690
interrogatedb: Add `interrogate_wrapper_is_extension()` function
2022-10-20 10:09:45 +02:00
rdb
25d11b3b17
interrogatedb: Add more query functions for seq/map elements
2022-10-19 16:04:37 +02:00
rdb
834be5c7a0
interrogate: Fix some badly formatted code
2022-10-10 15:10:53 +02:00
rdb
e6036b5209
interrogatedb: More queries for function wrappers:
...
- `interrogate_wrapper_function(wrapper)`
- `interrogate_wrapper_is_copy_constructor(wrapper)`
- `interrogate_wrapper_is_coerce_constructor(wrapper)`
2022-10-10 15:09:28 +02:00
DJs3000
f6fac95a78
Added e2k support (MCST Elbrus 2000) ( #1367 )
...
Closes #1367
2022-10-03 18:29:41 +02:00
Paul m. p. P
590531a0b2
py_panda: Fix compilation issue with Python 3.11
...
(Cherry-picked from 833ad89eba )
2022-09-01 19:18:46 +02:00
WMOkiishi
813490b2c7
interrogatedb: Add functions to interrogate_interface.h:
...
- `interrogate_function_is_unary_op`
- `interrogate_function_is_operator_typecast`
- `interrogate_type_is_array`
- `interrogate_type_array_size`
Closes #1362
2022-08-31 11:56:10 +02:00
rdb
cb400b5e17
interrogatedb: Add functions to obtain getters of make-seqs
2022-07-24 21:37:44 +02:00