Age | Commit message (Collapse) | Author |
|
Fixed the auto-completion bug in gdscript_editor
|
|
Autocompleting with indexing for builtin types added
|
|
Subgroups were added in #37678 but not properly handled everywhere
where PROPERTY_USAGE_GROUP is.
|
|
Fix: #37768
|
|
|
|
|
|
|
|
Seems like this was overlooked in PR #31142. See also issue #17082.
|
|
For us, it practically only changes the fact that `A<A<int>>` is now
used instead of the C++03 compatible `A<A<int> >`.
Note: clang-format 10+ changed the `Standard` arguments to fully
specified `c++11`, `c++14`, etc. versions, but we can't use `c++17`
now if we want to preserve compatibility with clang-format 8 and 9.
`Cpp11` is still supported as deprecated alias for `Latest`.
|
|
EngineDebugger is the new interface to access the debugger.
It tries to be as agnostic as possible on the data that various
subsystems can expose.
It allows 2 types of interactions:
- Profilers:
A subsystem can register a profiler, assigning it a unique name.
That name can be used to activate the profiler or add data to it.
The registered profiler can be composed of up to 3 functions:
- Toggle: called when the profiler is activated/deactivated.
- Add: called whenever data is added to the debugger
(via `EngineDebugger::profiler_add_frame_data`)
- Tick: called every frame (during idle), receives frame times.
- Captures: (Only relevant in remote debugger for now)
A subsystem can register a capture, assigning it a unique name.
When receiving a message, the remote debugger will check if it starts
with `[prefix]:` and call the associated capture with name `prefix`.
Port MultiplayerAPI, Servers, Scripts, Visual, Performance to the new
profiler system.
Port SceneDebugger and RemoteDebugger to the new capture system.
The LocalDebugger also uses the new profiler system for scripts
profiling.
|
|
Types include new integer types and others
|
|
- Renames PackedIntArray to PackedInt32Array.
- Renames PackedFloatArray to PackedFloat32Array.
- Adds PackedInt64Array and PackedFloat64Array.
- Renames Variant::REAL to Variant::FLOAT for consistency.
Packed arrays are for storing large amount of data and creating stuff like
meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of
memory. That said, many users requested the ability to have 64 bits packed
arrays for their games, so this is just an optional added type.
For Variant, the float datatype is always 64 bits, and exposed as `float`.
We still have `real_t` which is the datatype that can change from 32 to 64
bits depending on a compile flag (not entirely working right now, but that's
the idea). It affects math related datatypes and code only.
Neither Variant nor PackedArray make use of real_t, which is only intended
for math precision, so the term is removed from there to keep only float.
|
|
This attribute is now part of the standard we target so we no longer
need compiler-specific hacks.
Also enables -Wimplicit-fallthrough for Clang now that we can properly
support it. It's already on by default for GCC's -Wextra.
Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
|
|
objects and made them default.
|
|
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
|
|
Those keywords were deprecated for 3.1 in #22087.
Also fix token name for `TK_REMOTE`, should be "remote" like the keyword.
|
|
Fix errors raised when showing parse errors in the editor
|
|
Fixes #26691
|
|
for consistency with the format of the documentation:
"type func_name(arg1: type, arg2: type)"
|
|
Happy new year to the wonderful Godot community!
We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.
Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
|
|
Fixes #31818, fixes #33434
|
|
|
|
|
|
|
|
triggering completion.
Closes https://github.com/godotengine/godot/issues/25097
|
|
The PR did not use the ScriptCodeCompletionOption system introduced
later on, and somehow this did not generate a merge conflict even
though neighboring code was changed.
|
|
Added autoloads as a potential type.
|
|
The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is
(conditionally defines the error message).
There are a few ERR_EXPLAINC calls for C-strings where String is not included
which can stay as is to avoid adding additional _MSGC macros just for that.
Part of #31244.
|
|
Changed some code reported by LGTM and Coverity
|
|
|
|
|
|
|
|
|
|
compiler that this is intended.
|
|
Fix code completion not working with class_name
|
|
|
|
Fixes #27152
Fixes #28591
|
|
Small fixes to static analyzer bugs
|
|
Add settings for single-quotes on completion
|
|
Small fixes, mostly duplicated code
|
|
|
|
|
|
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0,
so contributors can keep using those versions for now (they will not undo those
changes).
|
|
|
|
This also refactors template processing to avoid repetition.
This closes #27074.
|
|
|
|
Fixes #25316.
|
|
Add a maximum recusion depth to _guess_expression_type
|
|
When a recursive declaration ends up in a GDScript file the
_guess_expression_type function would start looping and eventually run
out of stack space.
We now cap recusion for this function to 100 frames.
This fixes #25598
|
|
This allows most demos to run without any ubsan or asan errors. There
are still some things in thirdpart/ and some things in AudioServer that
needs a look but this fixes a lot of issues. This should help debug less
obvious issues, hopefully.
This fixes #25217 and fixes #25218
|