| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \
| | |
| | | |
Improve error message when a GDScript instance fails to be constructed
|
| | |
| | |
| | |
| | | |
Co-authored-by: Slashscreen <SlashScreen@users.noreply.github.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit c7f68a27ec4b825302998eeb5a400f869cd21cf7.
We still think GDScript files need UIDs to allow safe refactoring,
but we're still debating what form those should take exactly.
So far there seems to be agreement that it shouldn't be done via an
annotation as implemented here, so we're reverting this one for now,
to revisit the feature in a future PR.
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
KoBeWi/This_commit_message_is_auto-generated._Do_not_modify_it-
Add UID support to GDScript files
|
| |/ / |
|
|\ \ \
| |/ /
|/| |
| | | |
GDScript: Hot-reload changed scripts only
|
| |/ |
|
|/ |
|
|
|
|
|
|
|
|
|
| |
Fixes the issue by adding a mechanism by which the functions that were
previously disappearing can be profiled too. This is optional with
an editor setting, since collecting more information naturally slows the engine
further while profiling.
Fixes #23715, #40251, #29049
|
|\
| |
| |
| | |
Speed up `GDScript::get_must_clear_dependencies()`
|
| |
| |
| |
| |
| |
| |
| |
| | |
get_must_clear_dependencies() has a N^3*log(N) time complexity, and this can very quickly slow down the quitting process as more gdscripts are added in a project.
This change improves it to N^2*log(N).
Instead of using all the inverted dependencies, we do the same with all (non-inverted) dependencies, which is N times faster.
Fixes #85435
|
|/
|
|
| |
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
|
|\
| |
| |
| | |
Fix updating cached singletons when reloading GDScripts
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
| |
Commits reverted:
- 1ed69191483002ee62ec5b4d5adb16d3bc315ef3
- 271511726b02848783904429c8dde857f6266429
|
| |
|
|\
| |
| |
| | |
Fix lambda cross-thread dynamics
|
| | |
|
|/ |
|
|
|
|
| |
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
|
|\
| |
| |
| | |
Fix modifying base script exports not propagating to derived scripts
|
| |
| |
| |
| |
| |
| | |
opened property editor
This patch fixes the user having to navigate away from the selected node which has the derived script attached and back to see the changes of the base script exports reflected in the property editor.
|
| | |
|
|/ |
|
|\
| |
| |
| | |
GDScript: Fix duplication of inherited script properties
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Within a match statement, it is now possible to add guards in each
branch:
var a = 0
match a:
0 when false: print("does not run")
0 when true: print("but this does")
This allows more complex logic for deciding which branch to take.
|
|/ |
|
|\
| |
| |
| | |
GDScript: Fix subclass methods not inheriting RPC info
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously the `p_reversed` parameter didn't influence the order
in a correct way.
Also script overridden _notification functions were not called in
the correct order.
To fix this some `notification` functions had to add a `p_reversed`
parameter.
This made it necessary to adjust cpp-bindings.
Co-authored-by: David Snopek <dsnopek@gmail.com>
|
|\
| |
| |
| | |
Expose `_validate_property()` for scripting
|
| | |
|
|/
|
|
| |
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
|
|
|
|
|
|
|
| |
Currently, GDScripts who are only loaded through `ResourceLoader::load()`,
like Autoloads, do not have a pathway to announce there is an error in their
code. This contributes to significant confusion in error projects when
autoloads are involved. At least partially closes #78230.
|
|
|
|
|
|
|
|
|
|
| |
* This implementation adds threads on the side of the client (script debugger).
* Some functions of the debugger are optimized.
* The profile is also now thread safe using atomics.
* The editor can switch between multiple threads when debugging.
This PR adds threaded support for the script language debugger. Every thread has its own thread local data and it will connect to the debugger using multiple thread IDs.
This means that, now, the editor can receive multiple threads entering debug mode at the same time.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Fixes #78376
After #78138 'script_list' is now cleared in 'GDScriptLanguage::finish'
Because of that, we can safely remove the removal from that list that
happens on 'GDScript::~GDScript'.
|
| |
|
|\
| |
| |
| | |
GDScript: Fix some bugs with static variables and functions
|
| | |
|
|\ \
| |/
|/|
| | |
Returns null and does not cache when the source code of the script fails to load
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This usually means that an `ERR_FILE*` error occurred.
Previously, using `GDScriptCache::get_full_script()` would ignore errors during loading.
Now, all errors are not ignored.
Judging in which period the error occurred, it can be judged based on the return value:
1. null + err : Error during script loading (load_source_code()).
2. script + err: Error during script parsing.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:
Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.
Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:
- Local includes
* Conditional local includes
- Core includes
* Conditional core includes
- Thirdparty includes
* Conditional thirdparty includes
|
| |
|