Commit graph

8857 commits

Author SHA1 Message Date
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
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
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
Rémi Verschelde
8f17f26233
Merge pull request #76978 from raulsntos/property-hint-compat
Reorder `PropertyHint` enum to avoid breaking compat
2023-05-12 10:06:32 +02:00
Rémi Verschelde
cc48827e4a
Merge pull request #76946 from AThousandShips/shadow_warning
Enable shadow warnings and fix raised errors
2023-05-12 10:04:09 +02:00
Rémi Verschelde
863bcd3e2b
Merge pull request #76936 from clayjohn/revert-hsl
Revert "Add API for HSL conversion"
2023-05-12 10:03:21 +02:00
Fabio Alessandrelli
6fd9982358 [TLS] Add support for platform-specific CA bundles.
Adds a new OS::get_system_ca_certs method which can be implemented by
platforms to retrieve the list of trusted CA certificates using OS
specific APIs.

The function should return the certificates in PEM format, and is
currently implemented for Windows/macOS/LinuxBSD(*)/Android.

mbedTLS will fall back to bundled certificates when the OS returns no
certificates.

(*) LinuxBSD does not have a standardized certificates store location.
    The current implementation will test for common locations and may
    return an empty string on some distributions (falling back to the
    bundled certificates).
2023-05-12 09:58:23 +02:00
Raul Santos
a34207b812
Reorder PropertyHint enum to avoid breaking compat
Also syncs the Core enum with the C# enum for the source generators.
2023-05-12 01:48:07 +02:00
smix8
f986b52b3c Make navigation mesh edge connections optional
Makes navigation mesh edge connections optional.
2023-05-11 18:46:34 +02:00
Ninni Pipping
71ee65dc57 Enable shadow warnings and fix raised errors 2023-05-11 16:00:59 +02:00
Rémi Verschelde
5a3f955e05
astcenc: Update to 4.4.0
> The 4.4.0 release is a minor release with image quality improvements,
> a small performance boost, a few new quality-of-life features, and a
> few minor fixes for uncommon build configurations.

https://github.com/ARM-software/astc-encoder/releases/tag/4.4.0
2023-05-11 14:32:47 +02:00
smix8
7e1a261cc6 Prevent unnecessary navigation map synchronizations
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
2023-05-11 07:38:16 +02:00
clayjohn
f83a90192f Revert "Add API for HSL conversion"
This reverts commit 0b7fd664c1.
2023-05-10 17:45:56 -03:00
Fabio Alessandrelli
024a4b1f2a mbedTLS: disable weak crypto and TLS versions.
This commit adds a new mbedTLS configuration header to customize the
built-in library (and can be optionally replaced by a platform-specific
one).

Currently, it disables most weak cryptographic functions (with the
notable exceptions of MD5 and SHA-1), along with removing support for
TLS versions 1.0 and 1.1 (making TLSv1.2 the only supported one).
2023-05-10 11:13:19 +02:00
Rémi Verschelde
3b8c828159
Merge pull request #69988 from smix8/navigation_rvo_rework_4.x
Rework Navigation Avoidance
2023-05-10 10:19:12 +02:00
Fabio Alessandrelli
081808be49
Merge pull request #75721 from ScorpionInc/Expose_String_functions_for_X509Certificate
Exposes String functions for X509Certificates
2023-05-10 05:26:55 +02:00
smix8
a6ac305f96 Rework Navigation Avoidance
Rework Navigation Avoidance.
2023-05-10 05:01:58 +02:00
ScorpionInc
a5b867391e Exposes String functions for X509Certificates
Exposes String functions for X509Certificates via two function calls: save_to_string() and load_from_string(str).
2023-05-09 19:02:33 -04:00
Rémi Verschelde
6bca6beea3
Merge pull request #76878 from RedworkDE/tests-fix-errors
Fix various errors when running the unit tests
2023-05-09 19:28:54 +02:00
Rémi Verschelde
f20061d2d9
Merge pull request #76875 from lyuma/fix_zero_sparse_accessors
gltf: Permit sparse accessors without a bufferView.
2023-05-09 19:28:50 +02:00
Rémi Verschelde
1d87b36760
Merge pull request #76824 from Calinou/doc-export-pck-binary-resource-conversion
Document caveats related to exported project binary resource conversion
2023-05-09 19:28:46 +02:00
Rémi Verschelde
c2ba89d9d1
Merge pull request #76790 from achernik/master
LSP: don't send empty completion command
2023-05-09 19:28:42 +02:00
Rémi Verschelde
0f444f101a
Merge pull request #76661 from bonjorno7/hsl
Add API for HSL conversion
2023-05-09 19:28:35 +02:00
Rémi Verschelde
10ed1d87df
Merge pull request #76490 from dsnopek/dump-gdscript-docs
Dump API docs from inline GDScript comments using --doctool --gdscript-docs PATH
2023-05-09 19:28:30 +02:00
Lyuma
72d131899b gltf: Permit sparse accessors without a bufferView. 2023-05-09 10:03:38 -07:00
RedworkDE
8e7afec479 Fix various errors when running the unit tests
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-05-09 18:40:56 +02:00
bonjorno7
0b7fd664c1 Add API for HSL conversion
Math ported pretty much 1:1 from https://en.wikipedia.org/wiki/HSL_and_HSV
Style doesn't match the existing HSV code exactly, but should be close enough.
2023-05-09 17:43:10 +02:00
David Snopek
a64137d5dd Dump API docs from inline GDScript comments using --doctool --gdscript-docs PATH 2023-05-08 11:00:29 -05:00
Rémi Verschelde
140c7f4114
Merge pull request #76675 from rburing/csg_debug_collision
Add debug collision shape to CSG with collision
2023-05-08 16:40:15 +02:00
Rémi Verschelde
00215ec904
Merge pull request #74930 from BastiaanOlij/fix_action_map_entries
Fix incorrect HTC action map entries
2023-05-08 12:20:17 +02:00
Hugo Locurcio
febc674f48
Document caveats related to exported project binary resource conversion 2023-05-08 07:02:00 +02:00
Александр Черник
5715d3eb59 LSP: don't send empty completion command 2023-05-06 20:56:15 +01:00
Max Hilbrunner
921d231ad6
Merge pull request #76664 from Xenoparrot/simple-typos 2023-05-06 15:41:55 +02:00
Clay John
610877e326
Merge pull request #72288 from MewPurPur/use-string-repeat
Use `String.repeat()` to optimize several String methods
2023-05-05 09:56:48 -07:00
Max Hilbrunner
ce75c46331
Merge pull request #76650 from Koyper/gdscript_range_docs 2023-05-05 17:09:56 +02:00
Max Hilbrunner
c14f8701a7
Merge pull request #76557 from clayjohn/NoiseTexture3D
Fix compatibility breakage from adding NoiseTexture3D
2023-05-03 20:17:03 +02:00
Ricardo Buring
3f17a81f87 Add debug collision shape to CSG with collision 2023-05-03 08:41:37 +02:00
UltraBIF
8106d33d0f Fixed various typos across the docs 2023-05-02 18:24:32 -04:00
Alex Drozd
2b053e4e4c adjusting step size for fastnoise frequency hint 2023-05-02 23:25:36 +02:00
Koyper
bcce315a9a Update @GDScript.xml range docs to iterate backwards. 2023-05-01 11:03:48 -05:00
VolTer
6b84e258d2 Use String.repeat() in more places 2023-05-01 02:27:46 +02:00
clayjohn
ccff24597f Fix compatibility breakage from adding NoiseTexture3D
Also optimize some of the Noise methods
2023-04-28 18:49:09 -07:00
Rémi Verschelde
9f12e7b52d
Merge pull request #76521 from justinwash/csg-infinite-loop-fix
Fix infinite loop in Build2DFaces::_find_edge_intersections
2023-04-28 18:46:11 +02:00
Rémi Verschelde
f37fc4e708
Merge pull request #76412 from dalexeev/gds-reorganize-warnings
GDScript: Reorganize and unify warnings
2023-04-28 18:45:48 +02:00
Rémi Verschelde
0762f20410
Merge pull request #75732 from vonagam/fix-duplicate-condition
GDScript: Fix unnecessary duplication of pointed out lines
2023-04-28 18:45:25 +02:00
Rémi Verschelde
f374390fc1
Merge pull request #75014 from vonagam/assert-literal-false
GDScript: Allow usage of literal false in assert without a warning
2023-04-28 18:45:00 +02:00
Danil Alexeev
13310f3557
GDScript: Reorganize and unify warnings 2023-04-28 18:25:11 +03:00
Rémi Verschelde
7780926b25
GDScript: Fix template_debug compilation with TOOLS/DEBUG macro mismatch 2023-04-28 11:09:12 +02:00
Justin Wash
1ac2c537da Fix infinite loop in Build2DFaces::_find_edge_intersections 2023-04-27 18:11:25 -05:00
Rémi Verschelde
578ca94ef6
Merge pull request #76516 from clayjohn/DXT1
Use DXT1 when compressing PNGs with RGB format
2023-04-27 23:57:25 +02:00
Rémi Verschelde
fb3d3bf0cf
Merge pull request #76486 from Lasuch69/add-noisetexture3d-no-mipmaps
Add NoiseTexture3D
2023-04-27 23:56:13 +02:00
Samuele Panzeri
4aaa2e6477 Fix wait for thread not started 2023-04-27 20:28:22 +02:00
clayjohn
f84c6df8d1 Use DXT1 when compressing PNGs with RGB format
This results in much smaller file sizes with the same quality
2023-04-27 10:54:25 -07:00
Rémi Verschelde
c4a9d32126
Merge pull request #76264 from vnen/gdscript-static-variales
Add support for static variables in GDScript
2023-04-27 16:56:08 +02:00
George Marques
0ba6048ad3
Add support for static variables in GDScript
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.
2023-04-27 09:51:44 -03:00
K. S. Ernest (iFire) Lee
eaa84bc682
Fix CSG edge case causing intersection line to hit on common edge of 2 triangles.
The previous implementation assumed that the intersection entered or exited a
shape when it hit right on the common edge of 2 triangles. However, there is
also a case where it just "skirts" the other shape on the outside.

To fix this, we added code to check the intersection distance and if the
normals of the faces are pointed in the same direction as the intersection or
not (e.g. inner product > 0). This handles the case where the intersection
line hits the common edge of 2 triangles and skirts the other shape on the
outside.

Extended code to cover a third case.

Fixes #58637.

Co-authored-by: OldBelge <StevenGeens@users.noreply.github.com>
2023-04-27 11:39:29 +02:00
Rémi Verschelde
352ebe9725
Merge pull request #76483 from vnen/gdscript-dont-fail-returning-freed-object
GDScript: Don't fail when freed object is return
2023-04-27 08:47:04 +02:00
Rémi Verschelde
58439ac22c
Merge pull request #74053 from vnen/gdscript-fix-disassembler-lambda-crash
GDScript: Fix wrong increment for disassembly of lambda
2023-04-27 08:46:40 +02:00
Rémi Verschelde
35f6a1387c
Merge pull request #76488 from YuriSizov/docs-validate-code-params
Validate code tags in documentation for potential params
2023-04-27 08:20:42 +02:00
Rémi Verschelde
80568be36f
Merge pull request #76481 from vnen/gdscript-test-gen-default-path
GDScript: Use default path in test generator if not provided
2023-04-27 08:19:54 +02:00
Yuri Sizov
391eccca76 Validate code tags in documentation for potential params
Adds a check to make_rst to look for matches
between the text inside of the [code][/code] tag
and known param identifiers.
Fixes most of what was revealed.
2023-04-26 21:36:04 +02:00
Lasuch
0de6ad6a71 Add NoiseTexture3D 2023-04-26 20:00:18 +02:00
Yuri Sizov
26fb911f79
Merge pull request #72095 from anvilfolk/gd-docs
Improve GDScript documentation generation & behavior
2023-04-26 16:54:25 +02:00
George Marques
221deb1cc1
GDScript: Use default path in test generator if not provided
Since it's almost always used with the same path, assume it is running
from the Godot source root.
2023-04-26 11:12:47 -03:00
George Marques
abbdf80643
GDScript: Don't fail when freed object is return
This is check is a bit too eager. The user should be able to handle the
return value even if it's a freed object.
2023-04-26 10:57:22 -03:00
Rémi Verschelde
e1075e9c7c
Fix various typos with codespell
Also includes the grammar fix from #76206.

Co-authored-by: Peter Anderson <BWPanda@users.noreply.github.com>
2023-04-26 13:57:09 +02:00
Rémi Verschelde
8f7b09916d
Merge pull request #76026 from YuriSizov/editor-running-up-that-gui
Extract editor run toolbar into its own component
2023-04-26 12:15:29 +02:00
Rémi Verschelde
45cd5dcad3
Merge pull request #75885 from AThousandShips/compound_fix
[GDScript] Fix incorrect compound assignment
2023-04-25 16:17:02 +02:00
Rémi Verschelde
efb42c3101
Merge pull request #75447 from bruvzg/brotli_packedarray
Expose brotli decompression to the scripting API.
2023-04-25 16:16:56 +02:00
Rémi Verschelde
a98997bb45
Merge pull request #76404 from sodaJar/gdrep
Fix wrong file name on function call error
2023-04-25 10:00:19 +02:00
Rémi Verschelde
15d952147c
Merge pull request #74101 from RandomShaper/fix_gds_obj_temps
Fix edge cases of object lifetime when signals involved
2023-04-25 09:58:17 +02:00