Commit Graph

1450 Commits (e298f430b55bdbd9cf3eae9e041354c26d2e9c79)

Author SHA1 Message Date
David Snopek e298f430b5
Merge pull request #1569 from dsnopek/4.3-cherrypicks-1
Cherry-picks for the godot-cpp 4.3 branch - 1st batch
2024-09-11 17:17:24 -05:00
David Snopek 1ac33c906e Add a test to ensure that library path is absolute
(cherry picked from commit 92ace04989)
2024-09-03 16:35:55 -05:00
George L. Albany 842a7f621f Fix GCC 14 -Wtemplate-id-cdtor warning
As was fixed with godotengine/godot#91208

(cherry picked from commit 7b31f39bea)
2024-09-03 16:35:31 -05:00
Fabio Alessandrelli 37d255af6c [Web/SCons] Use CCFLAGS for SIDE_MODULE option
Was using CPPFLAGS, but should use the explicit scons CCFLAGS which
makes it clear they are applied to both the C and C++ compiler.

CPPFLAGS was also fine (they are preprocessor flags, also applied to
both C and C++), but we should try to stay consistent with what we do
in Godot.

(cherry picked from commit f36acd8e31)
2024-09-03 16:35:21 -05:00
Aaron Franke 762db4e4d6 Fix missing MAKE_TYPED_ARRAY_INFO for Packed*Arrays
(cherry picked from commit 10c3d1bc5f)
2024-09-03 16:35:11 -05:00
Raul Santos c823e84ff2 Correct type for `char16` and `char32` meta 2024-09-03 16:35:02 -05:00
Mikael Hermansson 26cb3292a0 Fix incorrect generation of some C++ operators 2024-09-03 16:34:54 -05:00
Raul Santos 150e45071b Avoid hardcoded type conversion for metadata
The engine uses the names `int` and `float` to refer to the 64-bit types, so in the bindings generator we have a hardcoded conversion for those types.

But this type conversion should not be used for metadata. Even though the underlying type should still be 64-bit for interop, metadata is meant to specify the correct type to expose. So if metadata says `float` it means the type is really meant to be a 32-bit `float` and not `double`. Other hardcoded type conversions (`int` and `Nil`) won't ever be metadata.

This change corrects the `float` type, to use the right type in the generated C++ code. Before we were always using `double` due to this type conversion.

(cherry picked from commit 4829199081)
2024-09-03 16:34:41 -05:00
David Snopek fbbf9ec4ef
Merge pull request #1550 from Naros/sync-4.3-stable
gdextension: Sync with upstream commit 77dcf97d82cbfe4e4615475fa52ca03da645dbd8 (4.3-stable)
2024-08-15 06:27:31 -05:00
Chris Cranford 2e4c350b83 gdextension: Sync with upstream commit 77dcf97d82cbfe4e4615475fa52ca03da645dbd8 (4.3-stable) 2024-08-15 05:53:22 -04:00
David Snopek 9b98377a62
Merge pull request #1546 from aaronfranke/fix-vec4arr
Fix missing type info for PackedVector4Array
2024-08-11 06:19:28 -05:00
Aaron Franke 92e6ea7303
Fix missing type info for PackedVector4Array 2024-08-10 21:21:13 -07:00
David Snopek 11773e52b0 gdextension: Sync with upstream commit 03afb92efa18874da19f7fc185a32c005d20aa1d (4.3-rc3) 2024-08-09 08:44:03 -05:00
David Snopek 937b1d809a
Merge pull request #1545 from Klaim/warnings_gdclass
Removes warnings generated by GDCLASS usage
2024-08-08 09:13:51 -05:00
Klaim (Joël Lamotte) 738859f49b removes warnings generated by GDCLASS usage
This change removes the warnings (unused parameters) coming from code injected by the GDCLASS macro.
Contrary to warnings coming from the normal source code which can be suppressed with most compiles by specifying the include directories of this library as external or system,
when the code is injected through a macro it is considered in the context of the user, which is the source code of user of the library.
That forces the users to modify their code to hide the warnings coming from the mandatory `GDCLASS` here.
That's why it's important to remove these warning from that specific macro and ideally any other macro that the user must use.
2024-08-08 02:46:28 +02:00
David Snopek 9da1e0cee1
Merge pull request #1543 from Calinou/readme-use-github-admonition-syntax
Use GitHub admonition syntax for the warning in README
2024-08-07 15:54:36 -05:00
David Snopek 3f4590f8e1
Merge pull request #1539 from Naros/dispatch-get-set-up-hierarchy
Make sure `_get` and `_set` dispatch up the class hierarchy
2024-08-07 15:53:54 -05:00
David Snopek e3e8101e8c
Merge pull request #1330 from pimms/cmake-hot-reload
Add hot reload support to CMakeLists.txt
2024-08-07 15:53:35 -05:00
Hugo Locurcio 26459dc47b
Use GitHub admonition syntax for the warning in README 2024-08-05 19:31:32 +02:00
David Snopek daf6ad3649 gdextension: Sync with upstream commit 3978628c6cc1227250fc6ed45c8d854d24c30c30 (4.3-rc2) 2024-08-02 09:39:49 -05:00
Chris Cranford c77d44f3f6 Make sure `_get` and `_set` dispatch up the class hierarchy 2024-08-01 12:03:27 -04:00
David Snopek f2b521f55a
Merge pull request #1530 from akien-mga/py-two-old
SCons: Remove old Python 2 compat code
2024-07-24 09:06:01 -05:00
David Snopek 628606b28b
Merge pull request #1519 from AThousandShips/cache_improve
[CI] Upload build cache before running tests
2024-07-24 09:05:48 -05:00
Rémi Verschelde 958776dfc3
SCons: Remove old Python 2 compat code 2024-07-18 10:37:47 +02:00
David Snopek 0a1e31fa45
Merge pull request #1513 from dsnopek/unexpose-is-instance-valid
Unexpose `UtilityFunctions::is_instance_valid()`
2024-07-15 12:16:21 -05:00
David Snopek 8012716ee3
Merge pull request #1510 from dsnopek/memnew-better-crash-message
Remind developers about `memnew()` in crash message when missing binding callbacks
2024-07-15 12:15:53 -05:00
A Thousand Ships 76b38de01a
[CI] Upload build cache before running tests 2024-07-13 16:25:12 +02:00
David Snopek 6d939e6878
Merge pull request #1509 from YuriSizov/method-bind-is-off-by-one
Fix argument metadata when binding methods
2024-07-06 11:42:45 -05:00
David Snopek 56cd3fd99e Unexpose `UtilityFunctions::is_instance_valid()` 2024-07-01 12:29:28 -05:00
David Snopek 99926d8e20
Merge pull request #1483 from AThousandShips/arr_typed_fix
Fix sharing of typed arrays from constructor
2024-06-28 07:26:44 -05:00
David Snopek e65ec904b8 Remind developers about `memnew()` in crash message when missing binding callbacks 2024-06-27 13:09:24 -05:00
Yuri Sizov 2b34bd0d8b Fix argument metadata when binding methods
While there doesn't seem to be any runtime issues,
this triggers the address sanitizer in a few ways,
depending on what kind of method you're
binding.
2024-06-27 18:40:29 +02:00
David Snopek 53b546e1df
Merge pull request #1507 from Repiteo/silence-msvc
SCons: Add `silence_msvc` option for Windows
2024-06-25 17:45:33 -05:00
David Snopek 7abe4ca9e4
Merge pull request #1506 from Repiteo/editorconfig
Add `.editorconfig`, consolidate `.gitattributes`
2024-06-25 09:43:36 -05:00
David Snopek 316dde80ba
Merge pull request #1505 from Repiteo/include-formatting
Fix `#include` formatting
2024-06-25 09:43:17 -05:00
David Snopek 7d7799b56e
Merge pull request #1504 from Repiteo/pre-commit-hooks
Replace legacy hooks with `pre-commit` Python tool
2024-06-25 09:42:55 -05:00
David Snopek 90c6ea2a12
Merge pull request #1497 from Naros/fix-variant-hpp-packed-vector4-array
Add missing enum & ctor for PackedVector4Array implementation
2024-06-25 09:42:41 -05:00
Thaddeus Crews 1989b1bf57
SCons: Add `silence_msvc` option 2024-06-25 09:38:00 -05:00
Thaddeus Crews 7a96d0314e
Add `.editorconfig`, consolidate `.gitattributes` 2024-06-25 08:46:06 -05:00
Thaddeus Crews 999018e7d1
Fix `#include` formatting 2024-06-25 08:28:04 -05:00
Thaddeus Crews e0d363aad8
Integrate `.pre-commit-config.yaml` 2024-06-24 15:43:55 -05:00
David Snopek c414c2b37d gdextension: Sync with upstream commit b75f0485ba15951b87f1d9a2d8dd0fcd55e178e4 (4.3-beta2) 2024-06-20 08:55:38 -05:00
Chris Cranford 78b63203d4 Add missing enum & ctor for PackedVector4Array implementation 2024-06-19 11:21:11 -04:00
David Snopek 0efc6cddbc
Merge pull request #1423 from AThousandShips/style_fix
Fix some style details in generation
2024-06-18 11:24:11 -05:00
A Thousand Ships e7a13e3bf4
Fix some style details in generation 2024-06-18 17:46:54 +02:00
David Snopek ed1e963a31
Merge pull request #1490 from AThousandShips/arg_name_fix
Enforce `p_` prefixes for arguments in binds
2024-06-18 10:43:27 -05:00
David Snopek 068e930c6a
Merge pull request #1496 from Faless/ci/fix-macos
[CI] Update macOS workers to macos-latest
2024-06-18 10:13:21 -05:00
Fabio Alessandrelli 2dd8917508 [CI] Update macOS workers to macos-latest
GitHub actions no longer allow `macos-11` runners
2024-06-18 16:52:42 +02:00
David Snopek 89831ff333
Merge pull request #1489 from Faless/web/longjmp
[Web] Force emcc to use "wasm" longjmp mode
2024-06-17 11:53:05 -05:00
David Snopek f2ac49aea5
Merge pull request #1167 from Faless/build/build_profile
Add support for build profiles.
2024-06-17 11:52:20 -05:00