Commit Graph

400 Commits

Author SHA1 Message Date
HolonProduction ab0397878c GDScript: Ensure correct caching of cyclic references 2025-12-05 10:41:06 +01:00
HolonProduction 2ce3be221a Correctly set GDScript internal path for shallow scripts 2025-12-04 20:44:00 +01:00
HolonProduction b4203f7f64 Prevent shallow scripts from leaking into the `ResourceCache`
Co-Authored-By: Moritz Burgdorff <mburgdorff@outlook.com>
Co-Authored-By: Lily <gofastlily@gmail.com>
2025-11-20 21:48:03 +01:00
Danil Alexeev 1bd7b99182
GDScript: Add `debug/gdscript/warnings/directory_rules` project setting 2025-11-12 12:20:34 +03:00
HolonProduction bf7d580e29 Remove raw base pointer from `GDScript` 2025-10-10 21:55:25 +02:00
Danil Alexeev 5f0ecf4c8c
GDScript: Remove some unnecessary booleans
Co-authored-by: HolonProduction <holonproduction@gmail.com>
2025-10-02 13:36:03 +03:00
Thaddeus Crews 7b5ee98474
Merge pull request #94118 from CrazyRoka/optimize-gdscript-notifications
Optimize `GDScriptInstance::notification` for better performance
2025-09-30 20:10:36 -05:00
CrazyRoka bcc0922a20 Optimize GDScriptInstance::notification for better performance 2025-09-30 19:57:35 +01:00
Yufeng Ying a50fc5acd8 Change ClassDB::get_class_list and related stuff. 2025-09-16 15:00:33 +08:00
Arti Chhabra e7214c229b Fix the issue by resetting the reloading false first and then returning error directly instead of calling Macro
Fix the review comment

Fix the clang format

Update as per review comment
2025-08-21 13:13:11 -07:00
Mikael Hermansson 809a6cf705 Fix crash when GDScript scripts are reloaded during initial import 2025-07-24 16:41:33 +02:00
A Thousand Ships f11aff3841
Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
Serhii Snitsaruk a095c5e3fa
GDScript call stack as reverse linked list with fixed coroutines
* GDScript call stack as reverse linked list with issues fixed
(originally proposed in 91006).
* Fix coroutine issues with call stack by resuming async call chain
inside `GDScriptFunction::call()`.
* This fixes corrupted line numbers for coroutines in the debugger and
backtrace (106489).

Co-authored-by: Juan Linietsky <reduzio@gmail.com>
2025-06-30 11:37:42 +02:00
Rémi Verschelde ebc36a7225
Merge pull request #107717 from aaronfranke/abstract-annotation
GDScript: Replace `abstract` keyword with `@abstract` annotation
2025-06-27 17:12:56 +02:00
kobewi 015cc38912 Mark GDScript and shader warnings for translation 2025-06-24 23:11:56 +02:00
Aaron Franke 1085200f51
GDScript: Replace `abstract` keyword with `@abstract` annotation
Co-authored-by: Danil Alexeev <dalexeev12@yandex.ru>
2025-06-23 12:24:45 -07:00
Danil Alexeev 24494d840e
Core: Unify display of error type prefixes 2025-06-09 20:18:51 +03:00
Fabio Alessandrelli c28d5d0058 Revert "Expose get_rpc_config and get_node_rpc_config"
This reverts commit 8835f326b1.
2025-05-26 15:57:38 +02:00
Yufeng Ying 1384e82c2c Improve ScriptLanguage get keyword API. 2025-05-17 18:43:19 +08:00
Thaddeus Crews b59d6bea4f
Merge pull request #67777 from aaronfranke/virtually-annotated
Add a keyword for abstract classes in GDScript
2025-05-13 16:22:16 -05:00
Thaddeus Crews 579feb387c
Core: Add `[[nodiscard]]` to string-like classes 2025-05-06 12:23:41 -05:00
Aaron Franke 067704f1cd
Add a keyword for abstract classes in GDScript
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2025-05-02 00:03:04 -07:00
Thaddeus Crews 28089c40c1
Merge pull request #91006 from reduz/live-backtrace
Ability to print and log script backtraces
2025-04-24 17:18:52 -05:00
reduz d1dcb40d56 Ability to print and log script backtraces
Co-authored-by: Mikael Hermansson <mikael@hermansson.io>
2025-04-24 18:54:41 +02:00
Lukas Tenbrink 91fe434a86 Always use `String` as `StringName` backing internally. 2025-04-23 14:57:03 +02:00
Thaddeus Crews 94282d88f9
Core: Use `Math` namespace for constants 2025-04-10 16:29:30 -05:00
Thaddeus Crews 4248411baf
Merge pull request #102521 from HolonProduction/cancel-await
GDScript: Cancel suspended functions when reloading a script
2025-04-08 12:32:52 -05:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00
Thaddeus Crews 780cf03051
Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
Lukas Tenbrink ffa6ef220b Use `append_` instead of `parse_` for `String` methods. 2025-03-27 17:51:02 +01:00
kobewi 75881f8322 Use initializer list in Arrays 2025-03-26 18:38:15 +01:00
Thaddeus Crews f09ee0171a
Style: Begin integrating simple `.clangd` fixes 2025-03-22 13:24:35 -05:00
Michael Alexsander ce8d2e4917
Implement class detection in GDScript for build configuration 2025-03-13 21:24:56 -03:00
HolonProduction 676e4c9013 GDScript: Cancel suspended functions when reloading a script 2025-03-06 11:34:40 +01:00
Rémi Verschelde daa074881b Revert "Fixed resource loader using not fully loaded scripts"
This reverts commit fd5fc9f3ee.

This caused significant regressions which are worse than the bug that #96499
aimed to address.

- Reverts #96499.
- Reopens #95909.
- Supersedes #102063.
- Fixes #99006.
- Fixes #101615.
2025-02-04 19:51:54 +01:00
Pedro J. Estébanez 318af42020 Include more attributes in the global class names cache 2025-01-29 09:39:50 +01:00
Danil Alexeev cd918ff470
GDScript: Remove `RENAMED_IN_GODOT_4_HINT` from `GDScriptWarning::Code` enum 2025-01-09 21:07:41 +03:00
Ricardo Subtil b77aa473a1 Implement a "Recovery Mode" for recovering crashing/hanging projects during initialization 2025-01-03 10:50:15 +00:00
Yufeng Ying 33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
Yufeng Ying a43f90b89d Remove unused variable in GDScriptLanguage. 2024-12-20 00:48:06 +08:00
Danil Alexeev 80d11500b5
Code Editor: Add documentation tooltips 2024-12-15 10:51:33 +03:00
Thaddeus Crews 1719f8ed3d
Merge pull request #99834 from kiroxas/passLengthToParseUTF8
Ensure `parse_utf8` has length of string passed in when available
2024-12-03 14:41:06 -06:00
rune-scape d58b2e879f Get rid of easily removable uses of const_cast 2024-12-01 17:50:13 -08:00
Kiro 83d4bde0a2 When calling code has length of string, pass it to parse_utf8 2024-12-01 08:31:22 +01:00
Thaddeus Crews 8004c7524f
Merge pull request #98301 from aaronp64/gdscript_validate_property
Avoid unnecessary `Dictionary` conversions in `GDScriptInstance::validate_property`
2024-10-29 19:26:02 -05:00
Thaddeus Crews 2584f75537
Merge pull request #96499 from beev1s/shallow-script-cache-error
Fix resource loader not resolving shallow loaded scripts through dependencies
2024-10-25 13:04:09 -05:00
Clay John b5368d5e40
Merge pull request #98356 from dustdfg/gdscript_endif_readability_comments
Add some comments to `#endif's` where it helps readability
2024-10-24 19:11:42 -07:00
Thaddeus Crews 7444da766a
Merge pull request #97374 from rune-scape/get-native-static-callable
GDScriptNativeClass: Allow getting static function as callable
2024-10-24 13:23:01 -05:00
Yevhen Babiichuk (DustDFG) 8c29ef38fc Add some comments to #endif's where it will easier life
Also added some new line to improve readability

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2024-10-21 14:31:45 +03:00
aaronp64 aa1d469ffb Avoid unnecessary Dictionary conversions in GDScriptInstance::validate_property
Updated GDScriptInstance::validate_property to only convert PropertyInfo to Dictionary if _validate_property function is found.
2024-10-18 12:10:19 -04:00