| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Which allows editable data associated with a particular class instead of
the instance. Scripts with static variables are kept in memory
indefinitely unless the `@static_unload` annotation is used or the
`static_unload()` method is called on the GDScript.
If the custom function `_static_init()` exists it will be called when
the class is loaded, after the static variables are set.
|
|
|
|
|
|
| |
Removes documentation generation (docgen) from the GDScript compiler to
its own file. Adds support for GDScript enums and signal parameters and
quite a few other assorted fixes and improvements.
|
| |
|
| |
|
| |
|
|\
| |
| | |
GDScript: Add limit to call depth
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The hard limit is set at 2048 depth which seems sensible between
legitimate recursive calls while still avoiding a crash because of a
stack overflow in most of the cases.
Note that it is still possible to reach the stack limit and get an
overflow before reaching a call depth. This is intended as a half-way
measure to stop crashing in most cases, since there's no reliable nor
portable way to check the amount of stack memory left.
|
|/ |
|
|\
| |
| | |
Cleanup function state connections when destroying instance
|
| |
| |
| |
| | |
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
|
|\ \
| | |
| | |
| | | |
Fix global script class parsing.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Broke with #72226
* Restored previous version of the code, made it even more error tolerant.
* Added a warning to **not** change the code.
Fixes #72226.
|
|/ / |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | | |
Support script global resource name in EditorFileSystem
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Works for binary and text files.
* Makes EditorQuickOpen work with custom resources again.
* Information is cached and easily accessible.
Properly fixes #66179. Supersedes #66215 and supersedes #62417
**WARNING**: This required breaking backwards binary compatibility (.res and .scn files). Files saved after this PR is merged will no longer open in any earlier versions of Godot.
|
|/ /
| |
| |
| |
| | |
This feature was removed from GDScript so it should not be present on
the interface nor in the saved export presets.
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Add PropertyInfo overload for GLOBAL_DEF
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
|
|\ \ \
| | | |
| | | |
| | | | |
Inner classes get their docs back
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
GDScript: Fix built-in script `find_class` bugs
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | | |
The crash would happen, theoretically, when getting the type of a invalid
variant.
|
|/ / |
|
| | |
|
|\ \
| | |
| | | |
GDScript: Fix subclass script path issues
|
| |/ |
|
|/
|
|
|
| |
Co-authored-by: Ricardo Buring <ricardo.buring@gmail.com>
Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>
|
| |
|
| |
|
| |
|