Commit Graph

54090 Commits

Author SHA1 Message Date
Rémi Verschelde 9853da4bfe Merge pull request #77009 from jpcerrone/fix_errors_while_reordering_input_maps
Fix errors that appear while reordering input map entries
2023-05-15 13:44:33 +02:00
Rémi Verschelde 591115dcde Merge pull request #76989 from dalexeev/fix-draw-multiline-colors-usage
Fix `draw_multiline_colors` usage
2023-05-15 13:44:09 +02:00
Rémi Verschelde 70dcfdab1f Merge pull request #76446 from reduz/add-gdextension-api-compatibility
Add a backwards-compatibility system for GDExtension
2023-05-15 13:43:46 +02:00
Rémi Verschelde 88f5b8d687 Merge pull request #74190 from TokageItLab/respect-fade-abort-oneshot
Fix NodeOneShot doesn't respect fade-out when aborting and improvement
2023-05-15 13:43:20 +02:00
Rémi Verschelde 1d83a4c5a5 Merge pull request #72249 from RandomShaper/robust_sync
Robustify multi-threading primitives
2023-05-15 13:42:52 +02:00
Juan Linietsky d8078d3f4c Add a backwards-compatibility system for GDExtension method
This adds a way to ensure that methods that were modified in the Godot API will continue working in older builds of GDExtension even if the new signature is different.

```C++
// New version (changed)
ClassDB::bind_method(D_METHOD("add_sphere","radius","position"),&MyShapes::add_sphere);
// Compatibility version (still available to extensions).
ClassDB::bind_compatibility_method(D_METHOD("add_sphere","radius"),&MyShapes::_compat_add_sphere);
```

**Q**: If I add an extra argument and provide a default value (hence can still be called the same), do I still have to provide the compatibility version?
**A**: Yes, you must still provide a compatibility method. Most language bindings use the raw method pointer to do the call and process the default parameters in the binding language, hence if the actual method signature changes it will no longer work.

**Q**: If I removed a method, can I still bind a compatibility version even though the main method no longer exists?
**A**: Yes, for methods that were removed or renamed, compatibility versions can still be provided.

**Q**: Would it be possible to automate checking that methods were removed by mistake?
**A**: Yes, as part of a future PR, the idea is to add a a command line option to Godot that can be run like : `$ godot --test-api-compatibility older_api_dump.json`, which will also be integrated to the CI runs.
2023-05-15 12:05:40 +02:00
Silc Lizard (Tokage) Renew 238bc9fe1f Fix NodeOneShot doesn't respect fade-out when aborting and improvement 2023-05-15 18:51:45 +09:00
Rémi Verschelde 78f9da7a9f Merge pull request #76887 from RedworkDE/ci-fix-windows-unit-tests
CI: Fix running the unit tests on windows
2023-05-15 10:57:04 +02:00
Yuri Rubinsky d7211b371c Merge pull request #77086 from Chaosus/shaders_fix_render_mode_completion 2023-05-15 10:58:23 +03:00
Rémi Verschelde 37fd9a32f3 Merge pull request #77065 from FranckRJ/fix-capsuleshape2d-getrect
Fixed width of CapsuleShape2D::get_rect + set center to center of shape
2023-05-15 09:35:23 +02:00
Rémi Verschelde e2f27a2248 Merge pull request #77042 from dioptryk/obj-vertex-colors-master
Add support for non-standard OBJ vertex entries
2023-05-15 09:34:59 +02:00
Rémi Verschelde 716f788b98 Merge pull request #77033 from dalexeev/editor-help-fix-array-links
EditorHelp: Fix displaying typed `Array` links
2023-05-15 09:34:35 +02:00
Rémi Verschelde 8ff9480c07 Merge pull request #77028 from kleonc/animatedsprite3d-autoplay-error-spam-fix
Fix `AnimatedSprite3D` autoplay warning
2023-05-15 09:34:12 +02:00
Rémi Verschelde 0f5e9a52da Merge pull request #77027 from brno32/hide-properties-when-overriden
Exclude overriden properties from Property Descriptions section
2023-05-15 09:33:48 +02:00
Rémi Verschelde 2161444ed0 Merge pull request #77025 from Summersay415/add-vector4i-icon
Add Vector4i icon
2023-05-15 09:33:25 +02:00
Rémi Verschelde 9ecb929da6 Merge pull request #76565 from clayjohn/debug-PSSM-splits
Re-implement the PSSM_SPLITS debug option
2023-05-15 09:33:01 +02:00
Rémi Verschelde 51a1bd7c08 Merge pull request #75869 from aaronfranke/anim-play-end-doc
Elaborate on the from_end option in AnimationPlayer.play() documentation
2023-05-15 09:32:33 +02:00
Danil Alexeev cc44d75cd8 Fix draw_multiline_colors usage 2023-05-15 09:56:13 +03:00
Yuri Rubinsky 719741b0eb Exclude incorrect completion options for render_mode in shaders 2023-05-15 08:21:16 +03:00
FranckRJ ab5462e386 Fixed width of CapsuleShape2D::get_rect + set center to center of shape
The width of the rect was only half of the width of the shape, and
the 0;0 coord was at the top left of the rect.
Now the width properly matches the width of the shape, and the 0;0
coord is at the center of the shape. It should match the behavior
of Godot 3.X.
2023-05-14 18:09:07 +02:00
Alex Drozd 28f391f301 Exclude overriden properties from Property Descriptions section 2023-05-14 17:41:14 +02:00
Fabio Alessandrelli fb10f45efe Merge pull request #75867 from tefusion/fix_http_client_unicode_request
Fix HTTPClient _request using wrong size
2023-05-14 16:05:39 +02:00
Bartłomiej Karwacki 444d211a8d Add support for non-standard OBJ vertex entries 2023-05-13 22:37:38 +02:00
Emmanuel Leblond ffd32a244b Merge pull request #66185 from touilleMan/gdextension-no-error-log-outofindex-operator-index
Make *_operator_index in gdnative_interface not logging an error if called with an out-of-bound index
2023-05-13 21:43:54 +02:00
Emmanuel Leblond 7501ebb91a Make *_operator_index in gdnative_interface not logging an error if called with an out-of-bound index 2023-05-13 20:01:55 +02:00
Danil Alexeev a16b2fc3b6 EditorHelp: Fix displaying typed Array links 2023-05-13 16:09:35 +03:00
kleonc d3d84d90de Fix AnimatedSprite3D autoplay warning 2023-05-13 13:10:38 +02:00
Summersay415 289af4f73c Add Vector4i icon 2023-05-13 16:20:56 +07:00
Rémi Verschelde c64afeb017 Merge pull request #77018 from RedworkDE/net-glue-neg-enum
Fix C# glue generation for enums with negative values
2023-05-12 23:27:07 +02:00
Rémi Verschelde 1c8b203f70 Merge pull request #77011 from Faless/tls/fix_crashes_when_unavailable
[TLS] Fix crashes trying to use TLS when not available.
2023-05-12 23:26:43 +02:00
Rémi Verschelde 405aa3f2d6 Merge pull request #77005 from paddy-exe/mention-spatial-node3d-ename
Mention "Spatial" rename to "Node3D" in Godot 4
2023-05-12 23:26:20 +02:00
Rémi Verschelde f26a2dbb1b Merge pull request #75662 from goncalo/basis_looking_at
C#: Add Basis.LookingAt
2023-05-12 23:25:52 +02:00
RedworkDE 45659ce2d9 Fix C# glue generation for enums with negative values 2023-05-12 21:53:42 +02:00
jpcerrone c6ea376842 fix errors while reordering input maps 2023-05-12 16:15:16 -03:00
Rémi Verschelde 964a5353db Merge pull request #76525 from MewPurPur/worker-thread-pool-docs
Add WorkerThreadPool documentation
2023-05-12 20:13:19 +02:00
Rémi Verschelde 02c7ffc85c Merge pull request #76203 from dalexeev/gds-fix-warning-ignore-member-var
GDScript: Fix warning ignoring for member variables
2023-05-12 20:12:55 +02:00
Rémi Verschelde ca26d9dc48 Merge pull request #71280 from RandomShaper/fix_deadlock_windows
Enhance thread-safety of loaders and importers (a.k.a. fix editor deadlock)
2023-05-12 20:12:32 +02:00
Rémi Verschelde 3be56afa27 Merge pull request #63263 from KoBeWi/power_tooltips
Enhance filesystem dock tooltips
2023-05-12 20:11:37 +02:00
Fabio Alessandrelli eeac6f8c7f [TLS] Fix crashes trying to use TLS when not available.
If no StreamPeerTLS implementation is available, HTTPClient and
WebSocketPeer will now correctly refuse to connect using TLS returning
ERR_UNAVAILABLE.

Similarly, ENetConnection will refuse to setup DTLS when PacketPeerDTLS
is not available.
2023-05-12 20:08:10 +02:00
Patrick c60e05694d Mention "Spatial" rename to "Node3D" in Godot 4 2023-05-12 20:06:25 +02:00
kobewi 27dccf1b5e Enhance filesystem dock tooltips 2023-05-12 19:28:34 +02:00
Pedro J. Estébanez 6189ab5291 Robustify multi-threading primitives 2023-05-12 19:04:57 +02:00
Pedro J. Estébanez 45d0b38076 Enhance thread safety of loaders and importers 2023-05-12 17:44:48 +02:00
Pedro J. Estébanez 7537a0521f Simplify ResourceLoader error callbacks 2023-05-12 17:44:48 +02:00
Danil Alexeev c2fbb40e9a GDScript: Fix warning ignoring for member variables 2023-05-12 17:43:58 +03:00
Rémi Verschelde 20ed51a912 Merge pull request #72704 from myaaaaaaaaa/single-main-thread
Partial fixes for `threading/worker_pool/max_threads` = 0
2023-05-12 15:09:50 +02:00
Rémi Verschelde 8dd48a98e2 Merge pull request #76999 from RandomShaper/fix_wtp_exit
`WorkerThreadPool`: Handle exit signal in the tentative scheduling done during waits
2023-05-12 14:10:03 +02:00
Rémi Verschelde e0bbb83e7c Merge pull request #76961 from akien-mga/linux-joypad-skip-udev-if-sandboxed
Linux: Don't use udev for joypad hotloading when running in a sandbox
2023-05-12 14:09:39 +02:00
Rémi Verschelde 373f2a8f8b Merge pull request #76541 from KoBeWi/WAZZUP
Add mono audio support to WASAPI
2023-05-12 14:09:10 +02:00
Rémi Verschelde 64816ff838 SCons: Fixup enabling MSVC warning C4458 on /W3
Follow-up to #76946.
2023-05-12 13:55:34 +02:00