Commit Graph

9235 Commits

Author SHA1 Message Date
Yuri Sizov
e4c89a0278 Merge pull request #78877 from mattdiener/master
C# Fix deserialization of delegates that are 0-parameter overloads
2023-07-12 15:09:36 +02:00
Yuri Sizov
6960a1d0e8 Merge pull request #78248 from felaugmar/load-svg-adjustable-scale
Added `Image::load_svg_from_(buffer|string)`
2023-07-12 15:09:03 +02:00
Septian
377cbaba43 Fix documentation for consistency 2023-07-12 05:33:49 +07:00
Raul Santos
13ab2b6f4f
C#: Improve GD.PushError and GD.PushWarning
- Use the name, file path and line number of the caller that invokes
`GD.PushError` and `GD.PushWarning` instead of the location in the C++
`runtime_interop.cpp` file.
- Improvements to getting the C# stack trace.
  - Use C# type keywords for built-in types in method declarations.
  - Remove extra space before each parameter in method declarations.
  - Skip one more frame to avoid `NativeInterop.NativeFuncs`.
  - Skip methods annotated with the `[StackTraceHidden]` attribute.
- Improvements to `ScriptEditorDebugger` when source is in project.
  - Avoid overriding error metadata when the source is inside the
project file.
  - Use the source function in the title when the source is inside
the project file.

Users that use these methods would expect the reported location printed
by these methods to correspond to a location in their project source files.
Specifically, they'd expect to see the file path and line number at which
they call these methods, and not the location of the C++ code (which is
always the same). Now, these methods are a lot more useful since users
can know which line in their source code printed the error/warning.
2023-07-11 11:19:11 +02:00
Rémi Verschelde
8a06ec979e
Change explicit 'Godot 4.0' references to 'Godot 4'
Fixes #79276.
2023-07-10 13:08:11 +02:00
bruvzg
008d3de1e9
FreeType: Update to version 2.13.1 2023-07-10 12:04:02 +03:00
Aaron Franke
07400f2065
Add copyright to GLTFState 2023-07-10 00:24:10 -05:00
Rémi Verschelde
1b8cbfe6e3
Merge pull request #79004 from smix8/fix_closest_navpath_pos_4.x
Fix closest possible navigation path position
2023-07-09 23:53:57 +02:00
DeeJayLSP
31ca736536 Lossy WebP: Enable sharp RGB to YUV conversion 2023-07-09 18:38:19 -03:00
Raul Santos
12e4aa93b3
C#: Document generated members
Documents generated members and tries to discourage users from calling/overriding internal methods that only exist to be used by the engine.
2023-07-09 14:26:15 +02:00
smix8
e5c24f7118 Fix closest possible navigation path position
Fixes closest possible navigation path position.
2023-07-08 23:16:47 +02:00
ocean (they/them)
7d29ac0bf2 GDScript: solve _populate_class_members() cyclic dependency problem 2023-07-08 15:34:20 -04:00
Rémi Verschelde
157973ad5e
Merge pull request #79173 from RedworkDE/net-commandline-exporting
C#: Fix command line exporting
2023-07-08 18:23:06 +02:00
Rémi Verschelde
4a3c6629be
Merge pull request #78832 from van800/path_locator_4x
Update the RiderPathLocator to support the JetBrains Toolbox 2.0
2023-07-08 18:19:01 +02:00
Danil Alexeev
c1b450566a
GDScript: Add @deprecated and @experimental doc comment tags 2023-07-08 18:13:19 +03:00
398utubzyt
8e56c807cc C#: Add a Roslyn analyzer for global classes
Co-Authored-By: Raul Santos <raulsntos@gmail.com>
2023-07-07 16:37:16 -07:00
RedworkDE
f3f3365abd C#: Fix command line exporting 2023-07-07 20:51:46 +02:00
ocean (they/them)
955049670f GDScript: Add static analysis error reporting in GDScriptCache::get_full_script() 2023-07-07 11:16:22 -04:00
RedworkDE
693e6e036b C#: Add null check before calling UnregisterGodotObject 2023-07-07 13:10:16 +02:00
Rémi Verschelde
26a58976e7
Merge pull request #79094 from raulsntos/dotnet/fix-symbol-comparison
C#: Compare symbol names without null flow state
2023-07-07 08:35:20 +02:00
Rémi Verschelde
69dbbcc313
Merge pull request #79092 from akien-mga/doctool-remove-version-attribute
Doctool: Remove version attribute from XML header
2023-07-07 08:34:55 +02:00
Rémi Verschelde
b3c2b52025
Merge pull request #78953 from anvilfolk/enum-desc
Fix regression with GDScript enum descriptions now showing up in documentation.
2023-07-07 08:31:44 +02:00
smix8
f7ebce2626 Mark NavigationServer3D.region_bake_navigation_mesh() as deprecated
Marks NavigationServer3D.region_bake_navigation_mesh() as deprecated.
2023-07-07 02:30:14 +02:00
Geoffroy Warin
6c6e5c482c Add missing useModelFront parameter to GodotSharp Basis and Transform
To LookAt methods.
Also adds Vector3 Model constants.

These were not added after #76082 was merged.
2023-07-06 19:01:02 +02:00
Raul Santos
671a5b4ea5
C#: Compare symbol names without null flow state 2023-07-06 16:10:14 +02:00
Rémi Verschelde
81064cc239
Doctool: Remove version attribute from XML header
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
Yuri Sizov
b7c2fd2e9a Bump version of module docs to 4.2 2023-07-05 22:58:30 +02:00
Rémi Verschelde
8a847d82a8
Merge pull request #78722 from RedworkDE/net-auto-version-defines
C#: Automatically generate version defines
2023-07-05 22:15:47 +02:00
Rémi Verschelde
346f1ab86b
Bump version to 4.2-dev
Keep on waitin'
2023-07-05 22:07:03 +02:00
Ivan Shakhov
bf3af9fd48 Update the RiderPathLocator to support the JetBrains Toolbox 2.0 2023-07-02 20:55:26 +02:00
ocean (they/them)
d48636c3bf Fix regression with enum descriptions now showing up in documentation. 2023-07-02 11:29:52 -04:00
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
Matt Diener
783facf60b C# Fix deserialization of delegates that are 0-parameter overloads
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-06-30 17:26:43 -04: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
Bastiaan Olij
72bd997fe8 Fix issue with accessing hand tracking without timing info 2023-06-29 10:05:39 +10:00
RedworkDE
f759cc00a3 C#: Enable exporting for Android 2023-06-28 22:34:14 +02:00
RedworkDE
7c456d2d0d C#: Remove old and unused android support code for mono 2023-06-28 22:34:14 +02:00
RedworkDE
777d959e05 C#: Add option to embed dotnet build outputs into the data file 2023-06-28 22:04:51 +02:00
RedworkDE
fe7c27b086 C#: Automatically generate version defines 2023-06-28 21:45:58 +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
RevoluPowered
83f2fce078 Add support for KHR_materials_emissive_strength
This reads the multiplier for the emission strength from GLTF files.

This is fairly universal and is required for blender's emission value to be imported.

The value is a simple universal multiplier and is unitless.

Sponsored by The Mirror.
2023-06-23 19:43:43 +01: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
Felipe Augusto Marques
26eb3db234 Added Image's load_svg_from_(buffer|string)
No core dependency to the svg module.
2023-06-23 00:43:43 -03: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
34a07b81ae
Allow unbundling OpenXR (for Linux distros)
Copy XrMatrix4x4f_CreateProjectionFov to our OpenXRUtil, instead of relying
on a private header.
2023-06-16 16:25:04 +02: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
Magian
e8aeb6baa0 C# Array<StringName> support PropertyHint.Enum 2023-06-15 16:01:42 +08:00
Hugo Locurcio
8352122e70
Document editor import options in the class reference
Tooltips are displayed when hovering import options, both in the Import
dock and in the import defaults editor (which is in the Project Settings).

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-06-15 08:30:48 +02:00
Danil Alexeev
bf8f996212
GDScript: Fix conflict between property and group names 2023-06-15 08:36:10 +03: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
Rémi Verschelde
754a52a4ab
Merge pull request #78201 from smix8/navmesh_cell_height_4.x
Fix `cell_height` for navigation meshes
2023-06-14 09:27:33 +02:00
Rémi Verschelde
5145098e6e
Merge pull request #78138 from KoBeWi/are_we_clear
Clear SelfList when destroying GDScriptLanguage
2023-06-14 09:25:34 +02:00
Rémi Verschelde
375156a637
Merge pull request #78099 from DeeJayLSP/rvo2023
Update RVO2 to git 2022.09
2023-06-14 09:25:10 +02:00
Rémi Verschelde
8b62c52d1c
Merge pull request #75419 from vonagam/fix-super-classes-in-array-literals
GDScript: Allow elements of a parent class in a typed array literal
2023-06-14 09:23:32 +02:00
DeeJayLSP
c920881105 Update RVO2 to git 2022.09 2023-06-13 21:13:21 -03:00
smix8
ee14b010ac Fix for threaded NavigationMesh baking under new thread guards
Fixes threaded NavigationMesh baking under new SceneTree thread guards that blocked the process.
2023-06-14 01:53:37 +02:00
TestSubject06
9e2f48c749 Add socket_send method to ENetConnection.
* Sends a given packet toward a given destination address and port, using the current ENetHost's socket.
2023-06-13 19:52:19 -04:00
smix8
180a5cded1 Fix cell_height for navigation meshes
Fixes `cell_height` for navigation meshes.
2023-06-13 23:24:32 +02:00
Danil Alexeev
ddd9aa11b3
Clarify @rpc annotation arguments docs 2023-06-13 21:33:48 +03:00
Rémi Verschelde
eb86dabee0
Merge pull request #77151 from dalexeev/gds-fix-call-static-from-non-static
GDScript: Fix calling static func from non-static is allowed
2023-06-13 18:54:19 +02:00
Rémi Verschelde
2b373f795c
Merge pull request #78173 from smix8/navregion_rot_warning_4.x
Add NavigationRegion rotation warning
2023-06-13 13:53:09 +02:00
Rémi Verschelde
c3e4dd86ff
Merge pull request #77693 from smix8/navmap_sync_warnings_4.x
Add navigation map synchronization warnings
2023-06-13 13:52:46 +02:00
smix8
4d8553ff63 Add NavigationRegion rotation warning
Adds NavigationRegion rotation warning.
2023-06-13 11:58:47 +02:00
Mikael Hermansson
1c1d1a1e2e Fix crash when using base types of extension-based types from C# 2023-06-12 18:29:52 +02:00
Rémi Verschelde
e208cdb170
Merge pull request #78081 from smix8/obstacle_api_update_4.x
Update NavigationObstacle API
2023-06-12 17:10:28 +02:00
kobewi
c646f7df70 Clear SelfList when destroying GDScriptLanguage 2023-06-12 16:04:26 +02:00
Rémi Verschelde
e289cf7085
pcre2: Update to upstream version 10.42 (take two)
Changelog: https://github.com/PCRE2Project/pcre2/blob/pcre2-10.42/ChangeLog

This fixes support for RISC-V architectures in the sljit library, so we
enable the module's compilation for `rv64` too.
2023-06-12 15:12:15 +02:00
smix8
c1fc331b88 Update navigation obstacle API
Updates navigation obstacle API.
2023-06-12 14:26:45 +02:00
Bastiaan Olij
e6e27f8be4 Fix OpenXR Passthrough mode 2023-06-12 21:29:38 +10:00
Rémi Verschelde
055986c870
Merge pull request #78125 from KoBeWi/editing_gone_wrong
Fix some invalid plugin edit calls
2023-06-12 11:57:35 +02:00
Rémi Verschelde
686d3efa39
Merge pull request #78112 from Faless/mp/4.x_fix_delta_crash
[MP] Fix crash when sending multiple delta variants.
2023-06-12 11:56:21 +02:00
kobewi
366c9678ca Fix some invalid plugin edit calls 2023-06-11 22:15:54 +02:00
Fabio Alessandrelli
45456f89a2 [MP] Fix crash when sending multiple delta variants. 2023-06-11 13:43:49 +02:00
Hakim
1fb1dd3248 Refresh the filesystem tab when exporting a new GLTF file 2023-06-10 23:04:20 +02:00
Rémi Verschelde
20bf10d15b
Merge pull request #77714 from smix8/navmap_error_msgs_4.x
Improve navigation map synchronisation error msgs
2023-06-10 12:11:00 +02:00
myaaaaaaaaa
e28868e30c Implement parallel foreach() for easier multithreading 2023-06-09 08:27:32 -04:00
Rémi Verschelde
5047892939
Merge pull request #73939 from raulsntos/dotnet/export-symbols
C#: Add option to disable exporting debug symbols
2023-06-09 12:14:15 +02:00
Rémi Verschelde
577ab3c565
Merge pull request #75746 from ajreckof/order_autocomplete
Sort code autocompletion with rules
2023-06-08 18:14:31 +02:00
Rémi Verschelde
1d6b28f867
Merge pull request #77898 from DeeJayLSP/vulkan-250
Update Vulkan and related libraries to 1.3.250.0
2023-06-07 13:31:57 +02:00
Rémi Verschelde
aa5dfff3f0
Merge pull request #77410 from dsnopek/object-pointer-pointer-encoding
Standardize Object ptrcall encoding on `Object **`
2023-06-07 13:31:49 +02:00
Rémi Verschelde
ec999b24ee
Merge pull request #74065 from RedworkDE/net-dotnet-encoding
C#: Always decode `dotnet` output as UTF-8
2023-06-07 12:08:46 +02:00
Rémi Verschelde
e3f446a123
Merge pull request #77942 from bruvzg/svg_font_viewbox_fix
Fix SVG font rendering after ThorVG update.
2023-06-07 11:02:27 +02:00
RedworkDE
e0efa3c357 C#: Always decode dotnet output as UTF-8 2023-06-07 10:58:34 +02:00
bruvzg
35b0354577
Fix SVG font rendering after ThorVG update. 2023-06-07 09:02:04 +03:00
Aaron Franke
6dde6b4cdf
GLTF: Expose the inertia tensor instead of a vector 2023-06-06 21:06:49 -05:00
Rémi Verschelde
0a0132ccf4
Merge pull request #77904 from raulsntos/dotnet/obsolete-deprecated-members
C#: Add `[Obsolete]` attribute to deprecated members
2023-06-06 20:40:09 +02:00
Rémi Verschelde
e2fcc4de34
Merge pull request #75188 from RedworkDE/net-synchronize-insert
C#: Synchronize adding ScriptInstances
2023-06-06 20:39:16 +02:00
Rémi Verschelde
bcdf3fe984
Merge pull request #75043 from dalexeev/gds-fix-doc-comment-parsing
GDScript: Fix doc comment parsing (newlines and spaces)
2023-06-06 20:38:47 +02:00
DeeJayLSP
1b642d283c Update Vulkan and related libraries to 1.3.250.0 2023-06-06 12:40:04 -03:00
Yuri Sizov
df38a53e05
Merge pull request #77756 from MewPurPur/In-my-ongoing-pursuit-of-optimization-I-undertook-the-task-of-meticulously-refining-and-streamlining-a-substantial-quantity-of-Scalable-Vector-Graphics-files-with-the-goal-of-maximizing-their-operational-effectiveness-and-resource-utilization
Reduce the total size of our SVGs by 15%
2023-06-06 12:41:16 +02:00
Raul Santos
0484993121
C#: Add [Obsolete] attribute to deprecated members 2023-06-06 12:23:23 +02:00
Danil Alexeev
049a49cac0
GDScript: Fix doc comment parsing (newlines and spaces) 2023-06-05 16:00:46 +03:00
VolTer
119456304b Reduce the total size of our SVGs by 15% 2023-06-04 15:11:48 +02:00
smix8
7f2417135f Improve navigation map synchronisation error msgs
Improves navigation map synchronisation error msgs related to mismatch of cell sizes.
2023-06-03 11:40:33 +02:00
Aaron Franke
629613a867
GLTF: Document gltf_skeleton->godot_bone_node is unused when importing 2023-06-03 02:13:07 -05:00
Raul Santos
0aa1f3440e
C#: Add option to disable exporting debug symbols
- Add export option to configure if the exported game should include debug symbols (PDB).
- Remove unused `outputDir` local variable.
- Replace `Process.GetCurrentProcess().Id` with `System.Environment.ProcessId` (CA1837).
2023-06-02 16:37:59 +02:00
Danil Alexeev
f3bf75fbb4
GDScript: Reset local variables on exit from block 2023-06-02 13:20:19 +03:00
smix8
fef7b4efdc Add navigation map synchronization warnings.
Adds navigation map synchronization warnings.
2023-05-31 16:23:27 +02:00
Mack
1326b7e04f Fix buffer over-read and memory leaks when using long filepaths in a zip archive and improved robustness of long filepaths and reading files. 2023-05-31 13:11:59 +00:00
Yuri Sizov
abba4e951a
Merge pull request #75614 from AThousandShips/vector_doc
Add more info on the nature of NAN
2023-05-30 16:21:38 +02:00
Yuri Sizov
f00641af9d
Merge pull request #77657 from vmedea/color-hex-doc
Clarify doc for Color.hex
2023-05-30 15:59:39 +02:00
Yuri Sizov
f067e27e0b
Merge pull request #77017 from Calinou/doc-noisetexture-seamless-small
Document seamless caveats on small textures in NoiseTexture2D and NoiseTexture3D
2023-05-30 15:43:22 +02:00
Ninni Pipping
5e3c625e24 Add more info on the nature of NAN 2023-05-30 15:38:10 +02:00
Yuri Sizov
3119255c0b
Merge pull request #72619 from raulsntos/dotnet/global-class-script
C#: Add global class support
2023-05-30 15:35:53 +02:00
mara
779ac20bb9 Clarify doc for Color.hex and C# Color()
The "alpha channel first" seems misleading to me. It doesn't match with
the examples, so remove it. Add a more detailed specification of the
expected number format in hex.
2023-05-30 15:15:04 +02:00
Rémi Verschelde
a65825cf72
Merge pull request #77597 from MewPurPur/highlighter-icons
Add syntax highlighter icons
2023-05-30 09:33:25 +02:00
VolTer
1740f7ea53 Add syntax highlighter icons 2023-05-29 20:42:54 +02:00
Raul Santos
a1f454fee3
C#: Add global class support
Co-authored-by: willnationsdev <willnationsdev@gmail.com>
2023-05-29 19:04:02 +02:00
Yuri Sizov
b4ac381f30
Merge pull request #77609 from RedworkDE/class-ref-code-fixes
Fix more issues with code tags in class reference
2023-05-29 17:37:16 +02:00
Yuri Sizov
7505fbd939
Merge pull request #76702 from MewPurPur/improve-docs-top-sections-GUI
Overhaul the top sections of the class reference (GUI classes)
2023-05-29 17:13:38 +02:00
Yuri Sizov
490a76edc8
Merge pull request #76526 from MewPurPur/improve-docs-top-sections-CORE
Overhaul the top sections of the class reference (Core classes)
2023-05-29 17:08:40 +02:00
RedworkDE
42ca35cfd7 Fix more issues with code tags in class reference 2023-05-29 15:46:34 +02:00
VolTer
1f4c5a702c Optimize CSG icons and more 2023-05-29 11:26:10 +02:00
Rémi Verschelde
409a3995e0
Merge pull request #77602 from aaronfranke/gltf-import-center-of-mass
Fix center of mass when importing GLTF physics bodies
2023-05-29 10:30:08 +02:00
Rémi Verschelde
eb1fbec467
Merge pull request #77550 from MewPurPur/reinstate-noise-texture-icon
Reinstate NoiseTexture2D's icon
2023-05-29 10:29:25 +02:00
Aaron Franke
a98be434b7
Fix center of mass when importing GLTF physics bodies 2023-05-29 00:09:15 -05:00
VolTer
151a4ba6a5 Overhaul the top sections of the class reference (GUI classes) 2023-05-28 14:24:54 +02:00
VolTer
ac8a9df2bf Reinstate NoiseTexture2D icon 2023-05-27 21:37:54 +02:00
Aaron Franke
5e139c2ab9
Add a get_node_index method to GLTFState 2023-05-27 12:30:25 -05:00
Aaron Franke
4017524363
Fix exporting MeshInstances without a Skeleton in the GLTF module 2023-05-27 03:41:31 -05:00
Haoyu Qiu
3e88c4cd5c Fix extraction of chained tr() calls 2023-05-27 10:38:37 +08:00
Rémi Verschelde
cb711a9950
Merge pull request #76895 from aaronfranke/gltf-webp
Add support for extending GLTF with more texture formats and support WebP
2023-05-26 11:00:06 +02:00
David Snopek
77733faede Attempt to standardize Object ptrcall encoding on Object ** 2023-05-25 21:46:22 -05:00
Ninni Pipping
f69fba0d65 Add restrictions to MultiplayerSynchronizer editor and documentation 2023-05-24 09:37:11 +02:00
Rémi Verschelde
dc625bcbfc
Merge pull request #77413 from theraot/master
Fix GLTFSkin binding for the godot_skin property
2023-05-24 08:50:21 +02:00
Fabio Alessandrelli
f1e0d50841 [MP] Implement "watched" properties.
Checked at "delta_interval" (default = every frame), synchronized
(reliably) if changes are detected.
2023-05-24 05:21:41 +02:00
Theraot
3b9bcadb9e Fix GLTFSkin binding for the godot_sking property 2023-05-23 19:28:06 -05:00
Rémi Verschelde
09d3dc86c0
Merge pull request #77379 from bruvzg/update_ts_libs
Update HarfBuzz, ICU and FreeType
2023-05-23 19:15:08 +02:00
Rémi Verschelde
ea5322fce2
Merge pull request #77377 from RedworkDE/net-sendtodebugger-crash
C#: Fix `SendToScriptDebugger` crash
2023-05-23 19:14:59 +02:00
ajreckof
006e899bb3 sort code completions with rules
Fixups

Add levenshtein distance for comparisons, remove kind sort order, try to improve as many different use cases as possible

Trying again to improve code completion

Sort code autocompletion options by similarity based on input

To make it really brief, uses a combination `String.similiary`, the category system introduced in a previous PR, and some filtering to yield more predictable results, instead of scattering every completion option at seemingly random.

It also gives much higher priority to strings that contain the base in full, closer to the beginning or are perfect matches.

Also moves CodeCompletionOptionCompare to code_edit.cpp

Co-Authored-By: Micky <66727710+Mickeon@users.noreply.github.com>
Co-Authored-By: Eric M <41730826+EricEzaM@users.noreply.github.com>
2023-05-23 05:12:34 +02:00
bruvzg
b64df2bf74
Update HarfBuzz, ICU and FreeType
HarfBuzz: Update to version 7.3.0
ICU4C: Update to version 73.1
FreeType: Update to version 2.13.0
2023-05-23 03:26:16 +03:00
RedworkDE
fa14b6d212 C#: Fix SendToScriptDebugger crash 2023-05-23 00:00:32 +02:00
Aaron Franke
7da93a0bc0
Add support for extending GLTF with more texture formats & support WebP 2023-05-22 16:30:20 -05:00
RedworkDE
8fdebb85ef C#: Synchronize adding ScriptInstances 2023-05-22 21:40:14 +02:00
bruvzg
aaddec7cb8
[TextServer] Add support for retrieving OpenType name strings. 2023-05-22 18:08:34 +03:00
ocean (they/them)
25c90836fd GDScript: do not warn of return value discarded for super() inside _init()
DO NOT BATCH MERGE WITH #77324, WILL RESULT IN BROKEN CI

Currently, calling super() inside _init() throws a
RETURN_VALUE_DISCARDED warning. The analyzer identifies super() as being a
constructor, which therefore returns an object of the relevant class.
However, super() isn't really a constructor by itself: in this case, it
is _part_ of the constructor, and so doesn't "return" a value.

A test case for this is already in #77324, which contains the warning. I
am duplicating it here, without the warning, and it should conflict with
the other PR.
2023-05-22 09:29:34 -04:00
Rémi Verschelde
4fd64edc30
Merge pull request #77199 from RedworkDE/net-callable-hash
C#: Mostly fix hash of ManagedCallable
2023-05-22 13:48:58 +02:00
Rémi Verschelde
06d337af80
Merge pull request #75943 from adamscott/fix-missing-script-type-nullptr-check
Add missing `script_type` `nullptr` check
2023-05-22 13:48:32 +02:00
Yuri Sizov
156a2fabea
Merge pull request #76659 from shana/shana/75152-fix-crash-when-initializing-glue-generation
Skip initializing the C# runtime when generating glue bindings
2023-05-19 17:10:40 +02:00
VolTer
04562662d3 Overhaul the top sections of the class reference (Core classes) 2023-05-19 07:04:48 +02:00
Andreia Gaita
e56fdc8a9a Skip initializing the C# runtime when generating glue bindings
The bindings generator doesn't require the C# runtime in order to generate
the glue, and when it the glue generation runs, it exits immediately
afterwards, so we can skip this initialization when the `--generate-mono-glue`
flag is passed in.

Fixes issue 75152
2023-05-18 13:57:42 +02:00
RedworkDE
1cfc382fe8 C#: Mostly fix hash of ManagedCallable
The hash can still change when reloading assemblies but in all other
cases the result should be correct.
2023-05-18 13:44:36 +02:00
Paul Joannon
178cd046bb
Link the right build property to REAL_T_IS_DOUBLE 2023-05-18 13:37:34 +02:00
Rémi Verschelde
6e1fec0abc
Merge pull request #77156 from mhilbrunner/docs-gdscript
Docs: Point to @GDScript in GDscript (script impl)
2023-05-17 15:59:25 +02:00
Max Hilbrunner
ad21fb0f92 Docs: Point to @GDScript in GDscript (script impl) 2023-05-17 13:47:33 +02:00
Danil Alexeev
3bf72be625
GDScript: Fix calling static func from non-static is allowed 2023-05-17 10:25:03 +03:00
Evan Todd
da7e54ec17 Fix CSGPolygon3D in path mode disappearing at runtime. 2023-05-15 16:52:39 -07:00
Danil Alexeev
7da3110e6b
GDScript: Fix validate_call_arg() for unresolved datatype 2023-05-15 12:13:52 +03:00
Hugo Locurcio
9e21647578
Document seamless caveats on small textures in NoiseTexture2D and NoiseTexture3D
This also harmonizes "normal map" spelling across the class reference.
2023-05-13 01:06:33 +02:00
Rémi Verschelde
c64afeb017
Merge pull request #77018 from RedworkDE/net-glue-neg-enum
Fix C# glue generation for enums with negative values
2023-05-12 23:27:07 +02:00
Rémi Verschelde
1c8b203f70
Merge pull request #77011 from Faless/tls/fix_crashes_when_unavailable
[TLS] Fix crashes trying to use TLS when not available.
2023-05-12 23:26:43 +02:00
Rémi Verschelde
f26a2dbb1b
Merge pull request #75662 from goncalo/basis_looking_at
C#: Add Basis.LookingAt
2023-05-12 23:25:52 +02:00
RedworkDE
45659ce2d9 Fix C# glue generation for enums with negative values 2023-05-12 21:53:42 +02:00
Fabio Alessandrelli
eeac6f8c7f [TLS] Fix crashes trying to use TLS when not available.
If no StreamPeerTLS implementation is available, HTTPClient and
WebSocketPeer will now correctly refuse to connect using TLS returning
ERR_UNAVAILABLE.

Similarly, ENetConnection will refuse to setup DTLS when PacketPeerDTLS
is not available.
2023-05-12 20:08:10 +02:00
Danil Alexeev
c2fbb40e9a
GDScript: Fix warning ignoring for member variables 2023-05-12 17:43:58 +03:00
Rémi Verschelde
ce4f9ddf9c
Merge pull request #76949 from akien-mga/astcenc-4.4.0
astcenc: Update to 4.4.0
2023-05-12 11:40:45 +02:00
Rémi Verschelde
258fabdbb3
Merge pull request #76836 from Faless/tls/system_certs
[TLS] Add support for platform-specific CA bundles.
2023-05-12 11:17:31 +02:00