Commit Graph

9040 Commits

Author SHA1 Message Date
Ignacio Roldán Etcheverry 22aad32c69 C#: Fix NodePaths completion error for not calling from main thread
The node API we use for code completion changed and no longer allows
being called from threads other than the main one.
2023-07-02 03:48:15 +02:00
Rémi Verschelde d0c1dd16ee
Revert "Update RVO2 to git 2022.09"
This reverts commit c920881105.

Fixes #78826.
2023-06-29 12:50:49 +02:00
RedworkDE 60b9eb169e C# Fix reloading of non-tool scripts 2023-06-28 11:46:43 +02:00
Rémi Verschelde 5e2f03fc99
Merge pull request #78711 from groud/explain_rpc
Explain a bit more RPCs options
2023-06-27 23:01:24 +02:00
Gilles Roudière 538c4b62b7 Explain a bit more RPCs options 2023-06-27 11:25:15 +02:00
Rémi Verschelde 8321e0355e
mbedtls: Improve X509 certificate load error handling
Positive numbers shouldn't be treated as a hard failure:

> For CRTs in PEM encoding, the function parses permissively:
> if at least one certificate can be parsed, the function
> returns the number of certificates for which parsing failed
> (hence \c 0 if all certificates were parsed successfully).
> If no certificate could be parsed, the function returns
> the first (negative) error encountered during parsing.

Fixes #77994.
2023-06-26 19:17:17 +02:00
Rémi Verschelde 3aaa787094
Merge pull request #78709 from Faless/mp/4.x_fix_delta_again
[MP] Fix delta variables index decoding.
2023-06-26 14:57:12 +02:00
Fabio Alessandrelli 91004df875 [MP] Fix delta variables index decoding. 2023-06-26 12:33:30 +02:00
smix8 4ae5dcca45 Fix NavObjects map assignments
Fixes NavObject map assignments.
2023-06-25 12:22:42 +02:00
Rémi Verschelde 731df52084
Merge pull request #77532 from dsnopek/text_server_adv_gdextension
Fix text_server_adv compiling as a GDExtension
2023-06-23 17:23:29 +02:00
Rémi Verschelde fa7f8e34f2
Merge pull request #78135 from BastiaanOlij/fix_openxr_passthrough
Fix OpenXR Passthrough mode
2023-06-23 11:59:16 +02:00
Ninni Pipping 982ca52e4c Fix `MultiplayerSpawner` documentation 2023-06-23 10:26:33 +02:00
Fabio Alessandrelli 2d19cec174
Merge pull request #78409 from AThousandShips/spawn_func_fix
Do not serialize `MultiplayerSpawner.spawn_function`
2023-06-23 10:13:11 +02:00
Rémi Verschelde fee49f4f9d
Merge pull request #78596 from smix8/navmes_old_poly_clear_4.x
Fix NavigationMesh not clearing old polygons
2023-06-23 08:49:06 +02:00
Rémi Verschelde 1d41ce76ca
Merge pull request #78550 from BastiaanOlij/fix_openxr_depth_buffer
Fix incorrect depth buffer option in OpenXR
2023-06-23 08:47:32 +02:00
smix8 ea96f5259f Fix NavigationMesh not clearing old polygons
Fixes NavigationMesh not clearing old polygons.
2023-06-23 02:53:09 +02:00
Rémi Verschelde f9fc77bbe4
Merge pull request #77545 from aaronfranke/gltf-no-skeleton
Fix exporting MeshInstances without a Skeleton in the GLTF module
2023-06-23 00:10:00 +02:00
Rémi Verschelde af16013905
Merge pull request #78571 from MewPurPur/include-extension-info
Document file extensions of GDScript, CSharpScript, and Shader
2023-06-22 18:32:25 +02:00
MewPurPur 8848c395b6 Add information about file extension to GDScript, CSharpScript, and Shader 2023-06-22 18:56:08 +02:00
Rémi Verschelde 18bc912bc0
Merge pull request #78543 from 3dnikita/fix-svg-in-ot-tag-closing
Fix SVG tag closing for OT font glyphs
2023-06-22 18:31:14 +02:00
Ninni Pipping 9159208ed1 Ensure `RID`, `Callable`, and `Signal` are stored as strings
Prevents parser errors in `.tscn` and `.tres` files where the assignment
would otherwise be empty.
2023-06-22 17:01:08 +02:00
3dnikita 1247c9e64f Fix SVG tag closing for OT font glyphs
Prevent ThorVG "Failed to create SVG canvas" errors
by self-closing empty SVG tags in OpenType fonts,
so the glyphs are renderred correctly in Controls.

Fixes #78374
2023-06-22 17:50:24 +03:00
Yuri Sizov e74bf831c2
Merge pull request #78549 from dalexeev/gds-fix-prop-list-name-check
GDScript: Remove unnecessary name check in `_get_property_list()`
2023-06-22 12:51:03 +02:00
Yuri Sizov 57e61db115
Merge pull request #75533 from RedworkDE/net-no-reload-noncollectible
C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
2023-06-22 12:45:02 +02:00
Danil Alexeev 84c8946565
GDScript: Remove unnecessary name check in `_get_property_list()` 2023-06-22 12:41:44 +03:00
Bastiaan Olij 2bc85f9ac6 Fix incorrect depth buffer option in OpenXR 2023-06-22 19:03:08 +10:00
Rémi Verschelde f2ce0b6741
Merge pull request #78521 from jpcerrone/fix_static_vars_refs
Fix errors destroying script with static variables
2023-06-21 21:52:15 +02:00
Rémi Verschelde e68270cace
Merge pull request #78488 from paulloz/dotnet-check-projectpath-not-solutionpath
Fix condition blocking .NET project build
2023-06-21 21:51:29 +02:00
Rémi Verschelde faf3faa8c8
Merge pull request #77744 from dalexeev/gds-reset-block-locals-on-exit
GDScript: Reset local variables on exit from block
2023-06-21 21:51:05 +02:00
ocean (they/them) 6c28b8edd3 GDScript: fix regression when checking for virtual function implementation.
Unfortunately it appears the virtual function checks in #77324 are not
trustworthy at runtime, because objects can have scripts attached, but
this information is not always available at compile-time. These checks
need to be removed.

The rest of the PR is still useful, making all method flags available to
the analyzer, so a full revert isn't necessary/desirable.

This reopens #76938, which will need another solution.
2023-06-21 15:13:45 -04:00
Paul Joannon dbdbe5b042
Fix condition blocking .NET project build
Since #73015, the build commands are called on project files instead of solution ones.
2023-06-21 20:13:32 +02:00
jpcerrone 8ce8216d17 Fix errors destroying script with static variables
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'.
2023-06-21 12:33:21 -03:00
Rémi Verschelde a2ce7a8f88
Merge pull request #78494 from kinami-imai/SSDinaTvuI8geW91IGFsbAo=
Fix lambda parsing continuing on subsequent lines
2023-06-21 13:52:42 +02:00
今井きなみ bf04c55175 Fix lambda parsing continuing on subsequent lines #73273 2023-06-21 12:56:57 +02:00
RedworkDE e0f644a48d C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
- Do not reload scripts from non-collectible assemblies
- Do not load GodotTools as collectible
- Do not attempt to reload the same project assembly forever
2023-06-21 12:47:52 +02:00
Rémi Verschelde ada712e06a
Merge pull request #78504 from timothyqiu/gridmap-selection
Fix GridMap tile picking when a search filter is applied
2023-06-21 10:20:11 +02:00
Rémi Verschelde d252f43a86
Merge pull request #78449 from Scony/add-agent-n-map-navserver-tests
Add `agent` and `map` tests for 'NavigationServer3D'
2023-06-21 10:19:24 +02:00
Haoyu Qiu 42faab826d Fix GridMap tile picking when a search filter is applied 2023-06-21 12:02:07 +08:00
L4Vo5 01f887ee4f Clarify when things with _IDLE and _PHYSICS enums will run 2023-06-20 13:25:26 -03:00
David Snopek 263c909349 Fix text_server_adv compiling as a GDExtension 2023-06-20 10:50:33 -05:00
Pawel Lampe e1bdde911c Add `agent` and `map` tests for 'NavigationServer3D'
This commits fixes a bug in `free()` function as well.
2023-06-20 17:48:06 +02:00
Yuri Sizov f1e79e2581 Make container element type comparison safe 2023-06-20 17:04:57 +02:00
Rémi Verschelde 248e5245e4
Merge pull request #73540 from mashumafi/fix-typed-array-add
Fix: Typed arrays aren't working with +
2023-06-20 15:12:39 +02:00
Rémi Verschelde af08b17f97
Merge pull request #78466 from raulsntos/dotnet/define-constants-without-whitespace
C#: Remove whitespace from define constants
2023-06-20 14:56:19 +02:00
Raul Santos 8f6166bd14
C#: Remove whitespace from define constants
Co-authored-by: RedworkDE <10944644+RedworkDE@users.noreply.github.com>
2023-06-20 14:33:45 +02:00
Rémi Verschelde 798663294f
Merge pull request #78452 from raulsntos/dotnet/compat-methods
C#: Add compat overloads
2023-06-20 13:14:20 +02:00
Raul Santos bd65ae633d
C#: Add compat overloads 2023-06-20 12:11:13 +02:00
Danil Alexeev a0577eb23b
GDScript: Fix `_get_script_name()` function collision for SCU build 2023-06-20 12:03:54 +03:00
Rémi Verschelde 73ac33342f
Merge pull request #78442 from smix8/navmesh_bake_geo_errors_4.x
Fix potential crashes in navmesh bake geometry functions
2023-06-20 09:22:03 +02:00
Rémi Verschelde 217a20a8a0
Merge pull request #78448 from akien-mga/black-23.3.0
CI: Update static checks to black 23.3.0
2023-06-20 00:05:39 +02:00
Rémi Verschelde 3158f6378e
Merge pull request #78265 from caseyjoy/57068_gridmap_grid_position
Update GridMap editor grid location when required
2023-06-20 00:04:53 +02:00
Rémi Verschelde bc42d5c32c
Merge pull request #77528 from dalexeev/gds-fix-disassembler-crash
GDScript: Fix crash in disassembler
2023-06-20 00:03:11 +02:00
Rémi Verschelde e4deaa2727
Merge pull request #76787 from RedworkDE/avoid-localvector-copy
Avoid making unnecessary copies of `LocalVector`
2023-06-20 00:01:55 +02:00
Rémi Verschelde c9c941e339
CI: Update static checks to black 23.3.0
And apply it to the codebase, removing empty lines at the start of blocks.
2023-06-19 23:33:02 +02:00
Danil Alexeev 5d3f5e8cf2
GDScript: Fix crash in disassembler 2023-06-19 23:50:33 +03:00
Rémi Verschelde c211c22abc
Merge pull request #78389 from rune-scape/rune-match-stringnames
GDScript: Strings and StringNames match
2023-06-19 21:18:42 +02:00
Rémi Verschelde ae00187b58
Merge pull request #77129 from dalexeev/gds-fix-static-var-bugs-part-1
GDScript: Fix some bugs with static variables and functions
2023-06-19 21:18:18 +02:00
Rémi Verschelde 5f9175f969
Merge pull request #76954 from Rindbee/return-null-on-fail-load-script
Returns null and does not cache when the source code of the script fails to load
2023-06-19 21:17:47 +02:00
smix8 f3a6e04f8b Fix potential crashes in navmesh bake geometry functions
Fixes potential crashes in navmesh geometry functions.
2023-06-19 20:58:36 +02:00
Rémi Verschelde cfae05094a
Merge pull request #72824 from dalexeev/gds-invalid-char-error
GDScript: Fix invalid character error message
2023-06-19 15:39:58 +02:00
Ben 0803467334
Fix "Go to definition" for GDScript type hints
Fixes #68475.
2023-06-19 15:29:25 +02:00
Rémi Verschelde c79183817d
Revert "minimp3: Add a .cpp file to simplify building the single-header implementation"
This reverts commit 6fc0912137.
2023-06-19 13:34:56 +02:00
Fabio Alessandrelli 116f783db7
Merge pull request #76207 from dalexeev/clarify-rpc-docs
Clarify `@rpc` annotation arguments docs
2023-06-18 21:34:34 +02:00
Ninni Pipping 6f6999221d Do not serialize `MultiplayerSpawner.spawn_function` 2023-06-18 17:58:47 +02:00
Rémi Verschelde f9e3e86501
Merge pull request #78352 from aaronfranke/gltf-physics-shape-rename-only
GLTF: Rename GLTFCollider class to GLTFPhysicsShape
2023-06-18 16:31:53 +02:00
Rémi Verschelde 19e0135acb
Merge pull request #78349 from raulsntos/dotnet/fix-method-info
C#: Set `PropertyInfo.class_name` for method parameters
2023-06-18 16:31:29 +02:00
Rémi Verschelde 829b8656ee
Merge pull request #75888 from smix8/navigation_pause_mode_4.x
Add agent pause mode to NavigationServer
2023-06-18 16:29:00 +02:00
Rémi Verschelde fcc39d498b
Merge pull request #75051 from AleryBerry/fix-error-message-lua-style
GDScript: Fix error message for LUA-style dictionary
2023-06-18 16:28:36 +02:00
Rémi Verschelde 1a62f1e4fc
Merge pull request #74741 from vnen/variant-not-for-everyone
Allow boolean operators for all Variant types
2023-06-18 16:28:10 +02:00
Rémi Verschelde 4db1d09bf5
Merge pull request #73657 from mashumafi/callable-ctor
Fix: Get constructor as Callable
2023-06-18 16:27:42 +02:00
Rémi Verschelde 1ce2425c0e
Merge pull request #73363 from dalexeev/gds-fix-min-int-not-representable
GDScript: Fix `MIN_INT` not representable as numeric literal
2023-06-18 16:27:16 +02:00
Rémi Verschelde 11ee6fcef0
Merge pull request #68311 from RobertMasek/fix-go-to-definition
Fix functionality of Go To Definition for properties set/get
2023-06-18 16:26:42 +02:00
smix8 ae9dd47d0c Add agent pause mode to NavigationServer
Adds agent pause mode to NavigationServer.
2023-06-18 12:37:03 +02:00
Casey 0defaefdba Update GridMap editor grid location when required
The GridMap editor's grid previously did not not move when moving
the tile cursor, only on certain menu actions.

This commit adds an update_grid call for valid mouse movement in
the editor, changes update_grid to only offset if there's a valid
cursor, and adds updates for the grid and cursor when a mesh library
is changed since we need the new RID for the update_grid check,
and if we remove the mesh library we want to make sure it gets
recentered. As a nice side-effect, it also updates to the new cursor
mesh if you load a new mesh library.

Fixes #57068
2023-06-17 16:09:41 -06:00
Raul Santos 48e20c628a
C#: Set `PropertyInfo.class_name` for method parameters 2023-06-16 23:19:38 +02:00
Aaron Franke a222bdf83f
GLTF: Rename GLTFCollider class to GLTFPhysicsShape 2023-06-16 15:18:24 -05:00
Danil Alexeev aebbbda080
GDScript: Fix some bugs with static variables and functions 2023-06-16 22:52:11 +03:00
cow-neaz 56cfde3a5c Fix Basic Universal compressing with normal maps. 2023-06-16 11:20:16 -07:00
Rémi Verschelde 824820d73a
Merge pull request #78271 from akien-mga/minimp3-add-cpp-for-implementation
minimp3: Add a .cpp file to simplify building the single-header implementation
2023-06-15 15:27:28 +02:00
Rémi Verschelde 7f5ef953b7
Merge pull request #78249 from RedworkDE/net-version-define
C#: Add version defines to help users deal with breaking changes
2023-06-15 15:26:31 +02:00
Rémi Verschelde 58416245ce
Merge pull request #78218 from raulsntos/dotnet/reserved-assembly-name
C#: Avoid GodotSharp as project assembly name
2023-06-15 15:26:22 +02:00
Rémi Verschelde 49b774e009
Merge pull request #77324 from anvilfolk/oh-no-its-virtual
GDScript: add errors when calling unimplemented virtual functions
2023-06-15 15:26:18 +02:00
Rémi Verschelde 3b4504afea
Merge pull request #75944 from akien-mga/style-modules-includes
Style: Harmonize header includes in modules
2023-06-15 15:26:14 +02:00
Rémi Verschelde 12e8bc558d
Merge pull request #73203 from dalexeev/gds-fix-num-literal
GDScript: Fix repeated `_` are allowed after decimal point
2023-06-15 15:26:09 +02:00
Rindbee cbce374f68 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.
2023-06-15 21:06:10 +08:00
Rémi Verschelde 25b2f1780a
Style: Harmonize header includes in modules
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
2023-06-15 14:35:45 +02:00
Rémi Verschelde 6fc0912137
minimp3: Add a .cpp file to simplify building the single-header implementation
Single-header libraries like this require passing a bunch of defines _once_
before including the header, but not multiple times. This can make it tricky
in user code to know when to request the implementation, if the header needs
to be included in multiple files.

So properly compiling a .cpp file for the implementation solves this, and
also enables us to properly disable warnings on thirdparty implementation code.
2023-06-15 13:50:27 +02:00
RedworkDE 1b466c6298 C#: Add version defines to help users deal with breaking changes 2023-06-15 13:18:04 +02:00
ocean (they/them) 861743cd04 GDScript: add errors when calling unimplemented virtual functions
This PR does a small refactor of how method flags are handled in the GDScript analyzer.
This way, it adds support for the analyzer to use any of MethodInfo's flags, where previously
it could only use METHOD_FLAG_STATIC and METHOD_FLAG_VARARG.

As a side-effect, this also normalizes behavior between editor and release templates, which fixes #76938.

The tests added also brought a different issue to light, where using `super()` appears to generate a
return variable discarded on calling super's _init(), which doesn't have a return value. This should be
tackled in a different PR, which will have to change the output of this PR's tests.
2023-06-15 07:16:31 -04:00
Raul Santos 7a031be769
C#: Avoid GodotSharp as project assembly name
The name GodotSharp conflicts with the name of the Godot assembly,
this causes a cyclic dependency.
2023-06-15 11:43:35 +02:00
Rémi Verschelde fe1aa263ca
Merge pull request #78237 from dsnopek/webrtc-gdextension-create-data-channel
Directly expose `WebRTCPeerConnection::create_data_channel()` to GDExtension
2023-06-15 10:50:42 +02:00
Rémi Verschelde 0da20d019e
Merge pull request #77412 from smix8/fix_threaded_navmesh_baking_4.x
Fix for threaded NavigationMesh baking under new thread guards
2023-06-15 10:49:58 +02:00
Rémi Verschelde 3a319daa99
Merge pull request #77351 from anvilfolk/super-discard
GDScript: do not RETURN_VALUE_DISCARDED for `super()` inside `_init()`
2023-06-15 10:39:59 +02:00
rune-scape fcdd926881 GDScript: Strings and StringNames match 2023-06-14 19:24:28 -07:00
David Snopek 1b9364ba96 Directly expose WebRTCPeerConnection::create_data_channel() to GDExtension 2023-06-14 14:31:41 -05:00
RedworkDE 92f13ba9ea C#: Unify project name handling and fix issues with the handling of some special characters
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-06-14 21:07:58 +02:00
Danil Alexeev fba8cbe6db
GDScript: Fix repeated `_` are allowed after decimal point 2023-06-14 21:47:12 +03:00
Rémi Verschelde 72b8d397d0
GDScript: Further restrict test error output for C++ errors
MSVC and GCC/Clang also have different function names...
2023-06-14 13:28:52 +02:00
Rémi Verschelde c40adf027d
GDScript: Only include script file path in test error output
Errors originating in C++ files cause unnecessary diffs whenever the engine is updated
(line number changes, etc.) and would cause CI failures due to different formatting
of the file path on Windows (backslashes, worked around here anyway) and when using
SCU builds (`../scu` insert).
2023-06-14 10:54:49 +02:00
Fabio Alessandrelli 0aad5eb1cf
Merge pull request #77627 from TestSubject06/reciprocal-conns
Allow an ENetConnection to send a packet to an arbitrary destination for the purposes of establishing NAT routing table entries.
2023-06-14 10:29:05 +02:00