1
0
Fork 0
Commit Graph

7981 Commits

Author SHA1 Message Date
Thaddeus Crews 2654dbaf5c
Merge pull request #99984 from KoBeWi/negative_diff_but_it's_deleting_whole_files
Move singleton StringName definitions to header
2024-12-09 14:33:11 -06:00
Lukas Tenbrink 8df2dbe2f6 Optimize StringBuilder append for static strings, and as_string(). 2024-12-08 16:39:25 +01:00
Lukas Tenbrink 875b48366c Optimize String.similarity by avoiding allocation for bigrams. 2024-12-08 13:28:40 +01:00
Lukas Tenbrink e1c42392c2 Improve string copy_from and copy_from_unchecked implementations, by making use of caller contracts and language spec (NULL termination and casts). 2024-12-07 01:41:25 +01:00
Lukas Tenbrink b5c31ebb41 Add contains_char() for single-character 'contains' calls. 2024-12-06 20:23:35 +01:00
Yelloween 98a23136d5 Fix missing event metadata in _input() with Input.parse_input_event()
Use merge_meta_from() for metadata copying.

Fixed include order

Removed unnecessary line
2024-12-06 22:08:16 +03:00
kobewi d3c9bee653 Move singleton StringName definitions to header 2024-12-06 13:43:31 +01:00
demolke 964e2b3a9e Fix handling of leading `..` in simplify_path
Prior to this `..\..\texture.png` was incorrectly simplified to `texture.png`
2024-12-06 07:53:55 +01:00
Thaddeus Crews 45734bd451
Merge pull request #99817 from Ivorforce/strlen-char32_t
Use `strlen()` 3 times instead of custom length check implementations in ustring
2024-12-05 14:12:21 -06:00
Thaddeus Crews 06cce0e81a
Merge pull request #100016 from Ivorforce/camelcase-to-underscore-rolling-cache
Optimize `_camelcase_to_underscore` (and thus `String.capitalize`)
2024-12-05 14:11:59 -06:00
Thaddeus Crews 3a948abdce
Merge pull request #100015 from Ivorforce/is-valid-filename-cache
Optimize `String::is_valid_filename()` and `String::validate_filename()`
2024-12-05 14:11:57 -06:00
Thaddeus Crews 9951743adf
Merge pull request #97822 from stdmnpkg/loongarch
Add loongarch64 support for Linux/*BSD
2024-12-05 14:11:44 -06:00
Student Main e0693f8ad8 Add loongarch64 support 2024-12-06 00:18:26 +08:00
Daylily-Zeleen 614a51f293 Optimize callable's stringify text. 2024-12-05 14:24:39 +08:00
Lukas Tenbrink 8d82933c7c Optimize _camelcase_to_underscore (and thus String.capitalize) by using a rolling cache of character attributes, instead of re-computing each iteration. 2024-12-04 18:39:38 +01:00
Thaddeus Crews 451fd7a436
Merge pull request #99540 from dalexeev/core-dont-gen-json-uid-files
Core: Do not generate `*.uid` files for JSON, certificates, and translations
2024-12-04 11:02:09 -06:00
Thaddeus Crews ab58a339df
Merge pull request #99712 from KoBeWi/bug_spawner_spawns_new_bugs_to_fix
Fix UID support in MultiplayerSpawner
2024-12-04 11:02:02 -06:00
Lukas Tenbrink 0d2e13bcb8 Optimize is_valid_filename and validate_filename by caching invalid filename characters, instead of re-splitting each call. 2024-12-04 17:54:11 +01:00
Danil Alexeev b91bacb43a
Core: Do not generate `*.uid` files for JSON, certificates, and translations 2024-12-04 14:26:10 +03:00
kobewi 67b95f341e Fix UID support in MultiplayerSpawner 2024-12-03 22:11:43 +01:00
Thaddeus Crews 44cda51110
Merge pull request #98812 from bruvzg/macos_bundles_as_file
[macOS] Handle bundles as files in the embedded file dialogs.
2024-12-03 14:41:07 -06:00
Thaddeus Crews 1719f8ed3d
Merge pull request #99834 from kiroxas/passLengthToParseUTF8
Ensure `parse_utf8` has length of string passed in when available
2024-12-03 14:41:06 -06:00
Thaddeus Crews 156bc92282
Merge pull request #98397 from adamscott/add-tmp-support
Add temp utilities (alias `OS::get_temp_dir()`, `FileAccess::create_temp()`, and `DirAccess::create_temp()`)
2024-12-03 14:40:59 -06:00
Thaddeus Crews a135a6478a
Merge pull request #98383 from RandomShaper/deprecate_unsafe_th_rend
Deprecate the pointless unsafe threading model for rendering
2024-12-03 14:40:56 -06:00
bruvzg d5e599f77e [macOS] Handle bundles as files in the embedded file dialogs. 2024-12-03 12:41:52 +02:00
Adam Scott 1b3e483899
Add file and dir temporary utilities
Co-authored by @Alex2782 for the Android bindings.
Many thanks to the reviewers also.

Co-authored-by: Alex <alex.hart.278@gmail.com>
2024-12-02 12:08:14 -05:00
Rémi Verschelde acdffd0a14
Merge pull request #99864 from HuntJSparra/server-features-regression
Fix `OS::has_feature()` skipping custom features
2024-12-02 15:51:56 +01:00
Rémi Verschelde d7515dddaa
Merge pull request #99815 from Ivorforce/string-name-not-equal-inline
Move StringName `!=` operator to the header file to make it inlineable.
2024-12-02 15:51:43 +01:00
Lukas Tenbrink 2b39314461 Abstract the implementation of 3 ustring string length checks with strlen, adding an implementation for char32_t. 2024-12-02 15:19:20 +01:00
rune-scape d58b2e879f Get rid of easily removable uses of const_cast 2024-12-01 17:50:13 -08:00
Lukas Tenbrink a47d29cf11 Move StringName != to the header file to make it inlineable. 2024-12-01 19:50:34 +01:00
Kiro 83d4bde0a2 When calling code has length of string, pass it to parse_utf8 2024-12-01 08:31:22 +01:00
Hunt J. Sparra ba992ed22f Fix early exit once has_server_feature_callback is set; remove server feature warning due to consistent "fallthrough" features (e.g., OS-specific features) 2024-11-29 23:34:52 -05:00
Rémi Verschelde 9048776457
Merge pull request #99751 from bruvzg/dir_init
Add `std::initializer_list` constructor for Dictionary.
2024-11-29 22:51:17 +01:00
bruvzg a4b17e7852 [FileAccess] Return error codes from `store_*` methods. 2024-11-29 23:22:31 +02:00
Rémi Verschelde 56a7dba10b
Merge pull request #99799 from akien-mga/fix-typos
Fix various typos and code style issues
2024-11-29 22:02:53 +01:00
Rémi Verschelde b1d65e4ed8
Merge pull request #99777 from Ivorforce/string-strlen-repeat-calls
String: Don't repeat calls to `strlen` in `split`, and make `splitter_length` const in `get_slice`.
2024-11-29 22:02:47 +01:00
Rémi Verschelde f4f6f5fb55
Merge pull request #99537 from BlueCube3310/betsy-bc1-bc5
Betsy: Add BC3 and BC5 support
2024-11-29 22:02:06 +01:00
cixil 8a42e3d3ef
Avoid duplicating signals from scene instances into packed scenes 2024-11-29 18:29:08 +01:00
Pāvels Nadtočajevs 54945c4d28 Add std::initializer_list constructor for Dictionary. 2024-11-29 14:12:40 +02:00
Danil Alexeev bd1a35ce9e
Core: Fix `JSON.{from,to}_native()` issues 2024-11-29 12:43:06 +03:00
Rémi Verschelde 88e81ee730
Fix various typos and code style issues 2024-11-28 17:40:42 +01:00
Lukas Tenbrink 884cbb5333 Don't repeat calls to strlen in split, and make splitter_length const in get_slice. 2024-11-28 01:55:48 +01:00
Thaddeus Crews 8b5f181d86
Merge pull request #90723 from Calinou/textedit-autocompletion-always-replace-if-not-shift
Make TextEdit autocompletion replace word unless Shift is held
2024-11-27 10:47:24 -06:00
BlueCube3310 88ffe07de9 Betsy: Add BC3 and BC5 support 2024-11-27 12:27:05 +01:00
Thaddeus Crews 13d59b28c1
Merge pull request #99563 from akien-mga/fix-projection-stringification
Fix stringification of Projection
2024-11-26 13:04:58 -06:00
Thaddeus Crews 0045b1a513
Merge pull request #98862 from HuntJSparra/early-projsettings-registration
Register Engine, OS, ProjectSettings, and Time singletons in time for for `INITIZATION_LEVEL_CORE`
2024-11-26 13:04:51 -06:00
Thaddeus Crews 7f3242a7e8
Merge pull request #99201 from Ivorforce/variant-get-contents-ptr
Add GDExtension `variant_get_ptr_internal_getter`, facilitating `VariantGetInternalPtr`-like behavior in GDExtension
2024-11-26 13:04:40 -06:00
Lukas Tenbrink ffd4de67d0 Add variant_get_ptr_internal_getter to gdextension_interface.h. The function returns functions to retrieve a pointer to a Variant's internal value. This enables GDExtensions to implement functionality similar to VariantGetInternalPtr, to access Variant internal values directly. 2024-11-26 02:19:03 +01:00
Rémi Verschelde f2f48aaf36
Fix stringification of Projection 2024-11-25 21:10:32 +01:00
Thaddeus Crews 9b5c7e9efa Merge pull request #99545 from KoBeWi/Vector4.0
Fix stringification of Vector4
2024-11-25 13:22:33 -06:00
Thaddeus Crews ea3154a0d4 Merge pull request #99424 from dalexeev/core-fix-builtin-enum-const-binds
Core: Fix built-in enum constant bindings
2024-11-22 14:54:31 -06:00
Thaddeus Crews 37305e40bc Merge pull request #95711 from TokageItLab/warn-oneshot-prop
Add hint for oneshot property & warning when it will be updated continuously by Force Continuous in `AnimationMixer`
2024-11-22 14:54:30 -06:00
Thaddeus Crews dcb59f0e7e Merge pull request #99548 from Repiteo/style/clang-format-19-options
Style: Add 19.1.0 LLVM options to `.clang-format`
2024-11-22 14:54:29 -06:00
Thaddeus Crews 514d73affc Merge pull request #99416 from adamscott/set-thread-count-for-single-threaded
Force `get_thread_count()` to `1` if single threaded
2024-11-22 14:54:28 -06:00
Thaddeus Crews e7b11d1c99 Merge pull request #99527 from RandomShaper/fix_threaded_trans
Make loading translations from threads safe
2024-11-22 14:54:26 -06:00
Thaddeus Crews c35e4c41d2 Merge pull request #97716 from pafuent/add_half_precision_floating_point_to_stream_peer
Add half precision floating point support to `StreamPeer` and `FileAccess`
2024-11-22 14:54:19 -06:00
kobewi e210313045 Fix stringification of Vector4 2024-11-22 21:44:30 +01:00
Rob Mayoff daa665c4cb fix copy/paste error (fixes #99518)
Replace erroneous use of `/` with `%`.
2024-11-22 13:21:02 -06:00
Thaddeus Crews e8a4b45ce4
Style: Add 19.1.0 LLVM options to `.clang-format` 2024-11-22 09:24:32 -06:00
Danil Alexeev 03b05cf9ac
Core: Fix built-in enum constant bindings 2024-11-22 14:03:21 +03:00
Pedro J. Estébanez 7a25173ff4 Make loading translations from threads safe 2024-11-22 09:44:07 +01:00
Thaddeus Crews f952bfe998
Merge pull request #98972 from dbnicholson/standardize-add-defaults
Expose `TranslationServer::standardize_locale` `add_default` param publicly
2024-11-21 17:57:01 -06:00
Dan Nicholson 6f4fadf65d Expose standardize_locale add_default param publicly
Comparing locales can have surprising outcomes since it standardizes
locales with defaults. For example, zh and zh_CN result in an exact
match since the defaults change them both to zh_Hans_CN. Expose the
add_default parameter publicly with a default of false so the fully
standardized locale can be inspected.
2024-11-21 16:50:31 -07:00
Hunt J. Sparra 48fbe4172b Register Engine, OS, ProjectSettings, and Time early. 2024-11-21 18:09:03 -05:00
Pedro J. Estébanez f79b972d0d ResourceLoader: Report appropriate error code when no suitable loader is found 2024-11-21 13:52:16 +01:00
Rémi Verschelde 9e6098432a
Merge pull request #99469 from akien-mga/revert-97370
Revert "ResourceLoader: Report error if resource type unrecognized"
2024-11-20 17:03:26 +01:00
Rémi Verschelde cfef79415b
Merge pull request #99449 from Sauermann/fix-revert-device-id-clash
Revert "Fix `InputEvent` device id clash" and add a compatibility function
2024-11-20 17:03:23 +01:00
Rémi Verschelde 23fc8e22a3
Merge pull request #95303 from EIREXE/inverted_composer
Fix `Projection::invert` for orthographic projection
2024-11-20 17:03:03 +01:00
Rémi Verschelde 219b14b905
Revert "ResourceLoader: Report error if resource type unrecognized"
This reverts commit fe21913ee8.
2024-11-20 16:50:30 +01:00
Markus Sauermann bc5e2f9b96 Revert "Fix InputEvent device id clash" and add a compatibility function
This reverts commit 916d480686.

Revert "Fix InputEvent crash when opening project"
This reverts commit abb9c0f171.

Introduce a compatibility function for projects affected by the
device id clash reversal

Since the reverted PR introduced changes in the project.godot
file, it seems prudent to introduce a compatibility function for
such affected projects.
2024-11-20 09:18:55 +01:00
Adam Scott 4988fa1ece
Force `get_thread_count()` to `1` if single threaded 2024-11-18 22:27:17 -05:00
David Snopek 2599df3b8a GDExtension: Fix method binds not saying if they are varargs 2024-11-18 13:19:22 -06:00
Thaddeus Crews 7ac9d7fec9
Merge pull request #99304 from emanvidmaker/Update-gamecontrollerdb.txt-2024
Sync controller mappings DB with SDL2 community repo [Nov 2024]
2024-11-18 09:23:47 -06:00
Thaddeus Crews 0dda6a974c
Merge pull request #99286 from KoBeWi/uid_in_a_path_factory
Support uid:// in more places
2024-11-18 09:23:44 -06:00
Thaddeus Crews 80e73b0dca
Merge pull request #98483 from timothyqiu/pack-dir-exists
`DirAccessPack`: Fix `file_exists` and `dir_exists` in exported projects
2024-11-18 09:23:37 -06:00
Álex Román 02b2efc668 Fix Projection::invert on orthogonal projections and others.
Fixes #68878, specially when using orthographic projection.

Also adds some tests.
2024-11-18 16:13:04 +01:00
A Thousand Ships 68f638cf02
Use `(r)find_char` instead of `(r)find` for single characters 2024-11-17 10:02:18 +01:00
kobewi 3b6705a641 Support uid:// in more places 2024-11-16 21:43:18 +01:00
Emanuel Acosta Gonzalez (emanvidmaker) f2d58f5d76
Sync controller mappings DB with SDL2 community repo [Nov 2024]
Synced with cfc2bffe0a
2024-11-15 21:56:25 -04:00
kobewi 0dabcd9941 Resource UID fixes and improvements 2024-11-14 16:37:54 +01:00
Pedro J. Estébanez a46ea9d064 Deprecate the pointless unsafe threading model for rendering 2024-11-14 10:43:29 +01:00
Thaddeus Crews 1627912d11
Merge pull request #98918 from bruvzg/pck_enc_iv
Allow setting custom initialization vector for FileAccessEncrypted. Add export setting to set static seed for PCK encryption initialization vectors.
2024-11-13 08:34:31 -06:00
Thaddeus Crews 8fd98b69d2
Merge pull request #99135 from Meorge/fix-unresponsive-axis-value
Replace default deadzone magic number with named constant and fix `InputEventJoypadMotion::set_axis_value` unresponsiveness
2024-11-13 08:34:10 -06:00
Thaddeus Crews 370c692bcb
Merge pull request #98706 from Nazarwadim/fix_capture_cache_was_not_cached
Fix `capture_cache.animation` was not cached
2024-11-13 08:33:54 -06:00
Pedro J. Estébanez a5caeeb664 SpinLock: Overhaul false sharing avoidance 2024-11-13 12:09:45 +01:00
Pāvels Nadtočajevs 93a21c3efc Fix PackedData::has_path() using wrong path format. 2024-11-13 09:50:10 +02:00
bruvzg 45593d45b3 Allow setting custom initialization vector for FileAccessEncrypted. Add export setting to set static seed for PCK encryption initialization vectors. 2024-11-13 08:16:12 +02:00
Thaddeus Crews 4d4353179e
Merge pull request #97218 from wenqiangwang/local_debuggger_expr_evalulation
Add support for `print` command in local (command line `-d`) debugger
2024-11-12 12:13:13 -06:00
Thaddeus Crews 179321a0a3
Merge pull request #91201 from bruvzg/con_type
[OS] Add functions to determine standard I/O device type.
2024-11-12 12:13:12 -06:00
Thaddeus Crews cc6ee3e956
Merge pull request #98713 from dalexeev/core-fix-callable-get-bound-arguments
Core: Fix `Callable.get_bound_arguments{,_count}()` return incorrect data
2024-11-12 12:13:04 -06:00
Thaddeus Crews ebf49317a2
Merge pull request #97923 from kisg/translation_server_siof_fix
Make TranslationServer singleton variable inline.
2024-11-12 12:13:01 -06:00
Malcolm Anderson 829dade53b Replace default deadzone magic number with named constant 2024-11-12 10:11:52 -08:00
Thaddeus Crews 8fd672cd87
Merge pull request #98120 from dalexeev/core-typed-dicts-bin-serialization
Core: Add typed dictionary support for binary serialization
2024-11-12 09:28:00 -06:00
Thaddeus Crews 27b394c52a
Merge pull request #98743 from dbnicholson/improve-compare-locales
Improve locale comparison
2024-11-12 09:27:54 -06:00
Thaddeus Crews d3c8e4ed5d
Merge pull request #98084 from BlueCube3310/image-cleanup-v2
Clean up Image
2024-11-12 09:27:50 -06:00
Thaddeus Crews 1cbe9715ea
Merge pull request #98969 from Faless/net/split_sockets
[Net] Split Unix/Windows NetSocket implementation
2024-11-12 09:27:40 -06:00
Dan Nicholson 2dd409fd70 Improve locale comparison
Since 9456454109, country specific locales are always preferred over
country-less locales even when the OS locale country doesn't match. For
example, running the Godot editor with locale es_ES will result in the
es_AR locale being chosen even though the es locale would be better.

The change happened because the score of the es_AR locale and the es
locale are the same when comparing to es_ES. Change this by parsing
locale strings into a Locale structure and decreasing the score when
script, country or variant are set in both but not matched. For the
es_ES case, this causes the es_AR score to be decreased since the
countries don't match. On the other hand, the es locale is not decreased
since it doesn't specify a country.
2024-11-12 06:06:50 -07:00
Pablo Andres Fuente eb86670f94 Add half precision floating point support to `StreamPeer`
Closes godotengine/godot-proposals#5983

Adds put/get methods to `StreamPeer` that handles half precision
floating point values.
Adds endode/decode half precision floating point to `marshalls`.
Adds `get_half` and `store_half` to `FileAccess`

Co-Authored-By: "Alfonso J. Ramos" <theraot@gmail.com>
2024-11-12 08:46:52 -03:00
Danil Alexeev 9ba098b670
Core: Add typed dictionary support for binary serialization 2024-11-12 10:18:56 +03:00
Thaddeus Crews 6c4c61f1b2
Merge pull request #98547 from timothyqiu/loaded-locales-set
Fix duplicated entries in `TranslationServer::get_loaded_locales()`
2024-11-11 14:18:40 -06:00
Thaddeus Crews 2ed6d12652
Merge pull request #97363 from reduz/deterministic-gen-suberesources-id
Allow passing UID to importer
2024-11-11 14:18:30 -06:00
Thaddeus Crews c8ff788052
Merge pull request #96590 from reduz/list-directory
Provide a reliable way to see original resources in a directory
2024-11-11 14:18:28 -06:00
Thaddeus Crews d76fbb7a40
Merge pull request #97356 from reduz/pck-file-removal
Add ability for PCK patches to remove files
2024-11-11 14:18:27 -06:00
Thaddeus Crews 2430b7f9b4
Merge pull request #97352 from reduz/uids-everywhere
Universalize UID support in all resource types
2024-11-11 14:18:25 -06:00
Thaddeus Crews f233d186ef
Merge pull request #93885 from dalexeev/core-fix-freed-object-booleanization
Core: Fix `Freed Object` booleanization
2024-11-11 14:18:18 -06:00
Thaddeus Crews 9be806aef1
Merge pull request #92986 from Repiteo/core/ref-instantiate-integration
Core: Integrate Ref `instantiate` where possible
2024-11-11 14:18:15 -06:00
Thaddeus Crews 30d87229ed
Merge pull request #82845 from Hysterelius/master
Color: Expose OKHSL properties
2024-11-11 14:18:04 -06:00
Thaddeus Crews bb3d5ef47c
Merge pull request #99078 from DarkMessiah/fix_callables_compare
Fix comparison of callables
2024-11-11 14:17:56 -06:00
Hysterelius 2126df2dfd
Color: Expose OKHSL properties 2024-11-11 20:41:57 +01:00
Stanislav Labzyuk 824ddeea3f Fix comparison of callables 2024-11-11 17:15:52 +01:00
Juan 2ac562cdf8 Add ability for PCK patches to remove files
Co-authored-by: Mikael Hermansson <mikael@hermansson.io>
2024-11-11 16:34:37 +01:00
Juan d57846087b
Universalize UID support in all resource types
Ensures all resource types support UIDs in a project.

This is required to fix:
* Scripts and many other resource types can't be referenced by UID and when refactored the references are lost.
* Path export properties can't use UID for unsupported types.
* Refactoring problems when files are moved outside the editor (this PR effectively fixes it).
* Editor properly refreshing paths if they changed externally while opened (as example, git update).
  This needs to be addressed in a subsequent PR, but this one effectively sets the prerequisites.

Resource types that do not support UID will get a .uid file appended to them (this includes .gd, .gdshader, .gdextension, etc. files).
2024-11-11 15:59:56 +01:00
Juan fe34c45d2a
Allow passing UID to importer
This helps, for importers spitting out new resources to the res://
filesystem to actually hash them to generate deterministic UIDs.

This PR also fixes the determinism for translations.
2024-11-11 15:22:42 +01:00
Thaddeus Crews 8d1462c748
CI: Update Linux runners to Ubuntu 24.04 2024-11-10 14:05:27 -06:00
Thaddeus Crews 925b690c98
Core: Integrate `Ref::instantiate` where possible 2024-11-10 12:41:26 -06:00
Thaddeus Crews c4a52e1ade
Merge pull request #98809 from bruvzg/mac_gde_libs_non_uni
[GDExtension] Improve macOS library loading/export.
2024-11-10 12:13:06 -06:00
Thaddeus Crews 63838c936c
Merge pull request #98278 from a-johnston/fuzzy-search-rebase
Add fuzzy string matching to quick open search
2024-11-10 12:12:56 -06:00
Thaddeus Crews 155f94adc0
Merge pull request #97370 from RandomShaper/refix_rl_not_found
ResourceLoader: Report error if resource type unrecognized
2024-11-10 12:12:51 -06:00
Thaddeus Crews f3294e59e1
Merge pull request #98891 from Faless/debugger/game_view_settings
[Debugger] Better settings configuration for RuntimeNodeSelect and Window quit
2024-11-10 12:12:46 -06:00
Thaddeus Crews 7d31e16686
Merge pull request #86600 from nikitalita/fix-missing-resources
Fix `MissingResource` properties being stripped on save
2024-11-10 12:12:44 -06:00
Thaddeus Crews 01ad56da38
Merge pull request #85167 from RandomShaper/good_spinlock
Enhance SpinLock
2024-11-10 12:12:36 -06:00
Thaddeus Crews 90ce26a27b
Merge pull request #94889 from rune-scape/no-const-list-erase
Remove const_cast in `List::erase`
2024-11-10 12:12:34 -06:00
Thaddeus Crews 323b2d53d7
Merge pull request #98963 from RandomShaper/fix_classdb_deadlock
Fix deadlocks related to ClassDB queries about global classes
2024-11-10 12:12:24 -06:00
Silc Lizard (Tokage) Renew 761a20f7a7 Add hint for oneshot & warning when it will be updated continuously 2024-11-11 01:12:45 +09:00
Fabio Alessandrelli 0c620b29cd [Net] Split Unix/Windows NetSocket implementation 2024-11-10 16:13:50 +01:00
Pedro J. Estébanez 56bdef9f6f Fix deadlocks related to ClassDB queries about global classes
`ClassDB::can_instantiate()` and other reflection methods deadlock if the type is an script global class, when such script indirectly uses a not-yet-registered class. The reason is the `ClassDB` read lock is still held when invoking the `ResourceLoader` to load the class script, which may in turn need to lock for writing (for the class registration).

In particular, this happens with some types related to animation tree, that aren't registered at engine startup, but can happen with others, especially ones from the user. Registration statements are also added for the animation-related types that were lacking them.
2024-11-08 18:15:58 +01:00
rune-scape a47daa0a44 Avoid const_cast in List::erase by requiring mutable elements 2024-11-08 00:10:08 -08:00
Pedro J. Estébanez 360ed2b00d Enhance SpinLock 2024-11-08 08:06:07 +01:00
Pedro J. Estébanez 95c6a24795 Add a utility cache line size constant 2024-11-08 08:06:01 +01:00
Thaddeus Crews 671d6e3230
Merge pull request #98150 from hunterloftis/fix-default-import-threaded
Fix freeze on non-thread-safe custom importers
2024-11-07 12:36:20 -06:00
Fabio Alessandrelli 7cd850b909 [Debugger] Move quit shortcut configuration to the SceneDebugger 2024-11-07 15:03:17 +01:00
bruvzg 76164c2aa9
[OS] Add functions to determine standard I/O device type. 2024-11-06 13:33:38 +02:00
nikitalita 95d2909474 Fix missing resource properties being dropped on save 2024-11-05 11:53:29 -06:00
Danil Alexeev e379cc76e5
Core: Fix `Callable.get_bound_arguments{,_count}()` return incorrect data 2024-11-04 22:41:56 +03:00
Thaddeus Crews bb5f390fb9
Style: Apply `clang-tidy` fixes (superficial)
• `modernize-use-bool-literals`, `modernize-use-nullptr`, and `readability-braces-around-statements`
2024-11-04 12:11:14 -06:00
Thaddeus Crews 89a311205f
Style: Apply `clang-tidy` fixes
• `modernize-use-default-member-init` and `readability-redundant-member-init`
• Minor adjustments to `.clang-tidy` to improve syntax & remove redundancies
2024-11-04 12:11:06 -06:00
Pedro J. Estébanez fe21913ee8 ResourceLoader: Report error if resource type unrecognized
Co-authored-by: Summersay415 <summersay415@gmail.com>
2024-11-04 09:49:37 +01:00
bruvzg 2d66988f99
[GDExtension] Improve macOS library loading/export. 2024-11-04 09:28:30 +02:00
BlueCube3310 80a9c0d569 Clean up Image 2024-11-01 21:32:16 +01:00
A Thousand Ships ec650a2f09
[Core,Drivers] Improve use of `Ref.is_null/valid`
Use `is_null` over `!is_valid` and vice versa.
2024-11-01 16:50:11 +01:00
Thaddeus Crews c6c464cf9a
Merge pull request #98679 from Bromeon/qol/rename-static-call
Rename `ClassDB::class_call_static_method` -> `class_call_static`
2024-10-31 20:14:44 -05:00
Thaddeus Crews 363c0b5fec
Merge pull request #47502 from KoBeWi/add_0
Always add decimal when converting float to string
2024-10-31 20:14:39 -05:00
Thaddeus Crews 163bf94d04
Merge pull request #98091 from AThousandShips/improve_err_prints_core
[Core] Improve error messages with `vformat`
2024-10-31 20:14:36 -05:00
Nazarii d1dc7afdd5 Fix `capture_cache.animation` was not cached 2024-10-31 19:26:02 +02:00
Jan Haller a025ceddc0 Rename ClassDB::class_call_static_method -> class_call_static 2024-10-30 19:07:28 +01:00
A Thousand Ships 38f9769bc6
[Core] Improve error messages with `vformat` 2024-10-30 15:55:51 +01:00
Michael Alexsander 16524a8a01
Add "Game" editor for better runtime debugging 2024-10-30 11:42:17 -03:00
Thaddeus Crews a8931f1aa9
Merge pull request #98652 from stuartcarnie/2d_texture_state_fixes
2D: Fix various issues and minor performance optimisations
2024-10-29 19:25:54 -05:00
Thaddeus Crews b8f626a0e1
Merge pull request #65962 from 4d49/format-object
Add `Object` support for `String.format`
2024-10-29 19:25:45 -05:00
Thaddeus Crews b7a0971ad2
Merge pull request #97934 from adamscott/give-AThousandShips-a-break
[Codestyle] Set clang-format `RemoveSemicolon` rule to `true`
2024-10-29 19:25:36 -05:00
Stuart Carnie 0d1d945727
2D: Fix various issues and minor performance optimisations 2024-10-30 08:36:45 +11:00
Mansur Isaev 98c89f17c4 Add `Object` support for `String.format` 2024-10-29 22:27:33 +01:00
Clay John 748f4079e3
Merge pull request #96439 from darksylinc/matias-TheForge-pr03-rebased
Add Swappy & Pre-Transformed Swapchain
2024-10-29 12:34:40 -07:00
Matias N. Goldberg aaa0e2fddf Add Swappy & Pre-Transformed Swapchain
- Adds Swappy for Android for stable frame pacing
- Implements pre-transformed Swapchain so that Godot's compositor is in
charge of rotating the screen instead of Android's compositor
(performance optimization for phones that don't have HW rotator)

============================

The work was performed by collaboration of TheForge and Google. I am
merely splitting it up into smaller PRs and cleaning it up.

Changes from original PR:

- Removed "display/window/frame_pacing/android/target_frame_rate" option
to use Engine::get_max_fps instead.
- Target framerate can be changed at runtime using Engine::set_max_fps.
- Swappy is enabled by default.
- Added documentation.
- enable_auto_swap setting is replaced with swappy_mode.
2024-10-28 18:55:37 -03:00
Adam Johnston 3ac043c508 Add fuzzy string matching to quick open search
Co-authored-by: sam <samsface@gmail.com>
2024-10-28 11:24:36 -07:00
Haoyu Qiu f451997666 Fix duplicated entries in `TranslationServer::get_loaded_locales()` 2024-10-26 15:10:43 +08:00
Thaddeus Crews edad871a2d
Merge pull request #98425 from darksylinc/matias-breadcrumbs-race-fix
Fix race conditions in breadcrumbs
2024-10-25 13:04:12 -05:00
Thaddeus Crews d3298fe738
Merge pull request #98395 from Repiteo/core/char-range-utils-update
Core: Update `char_range.inc` to Unicode 16
2024-10-25 13:04:07 -05:00
Thaddeus Crews 02088ab44c
Merge pull request #74714 from dalexeev/expose-bresenham-line
Expose `Geometry2D.bresenham_line()` method
2024-10-25 13:04:05 -05:00
Thaddeus Crews 6e9907d483
Merge pull request #92554 from Nazarwadim/implement_a_hash_map
Implement array based hash map `AHashMap`
2024-10-25 13:03:45 -05:00
Adam Scott 0d350e7108
Set clang-format `RemoveSemicolon` rule to `true`
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
Danil Alexeev 9f0ae21095
Expose `Geometry2D.bresenham_line()` method
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2024-10-25 10:27:55 +03:00
Clay John f83a27353f
Merge pull request #98318 from alexkar598/mouse_emulation
Fix mouse emulation always sending events to the main window
2024-10-24 20:37:55 -07:00
Clay John 33db590947
Merge pull request #98357 from yeojunh/valid-base-check-num-int64-uint64
Core: Fix String::num_int64(), uint64 for valid base check
2024-10-24 19:41:43 -07:00
Clay John b4ba0f983a
Merge pull request #98363 from dustdfg/rid_in_operator_fix
Allow using RID with `in` operator for Arrays and Dictionaries
2024-10-24 19:04:41 -07:00
Clay John a9e5850681
Merge pull request #98493 from KoBeWi/tfw_you_trade_CLASH_for_a_CRASH
Fix InputEvent crash when opening project
2024-10-24 18:38:58 -07:00
nazarii 76208f7155 Implement array based hash map 2024-10-24 21:34:12 +03:00
Thaddeus Crews d8aa32dccd
Merge pull request #97868 from timothyqiu/po-loader
Fix "No loader found" error after editing PO file
2024-10-24 13:22:54 -05:00
kobewi abb9c0f171 Fix InputEvent crash when opening project 2024-10-24 17:05:05 +02:00
Haoyu Qiu 1b4f6f6bfa DirAccessPack: Fix file_exists and dir_exists in exported projects 2024-10-24 14:26:36 +08:00
kobewi 5c0f2414cd Always add decimal when printing float 2024-10-23 15:00:21 +02:00
Matias N. Goldberg 668c9b74e2 Fix race conditions in breadcrumbs
Adds "--accurate-breadcrumbs" CLI command

Additionally, leave out breadcrumbs code in non-debug, non-dev builds.
Fix regression introduced in #98388 where command_insert_breadcrumb() is
called even in non-debug builds.

Fixes #98338
2024-10-22 22:08:46 -03:00
Thaddeus Crews a4ed24acef
Merge pull request #98041 from Hilderin/fix-lost-gdextensions-on-startup
Fix loss of gdextension on editor startup
2024-10-21 16:39:30 -05:00
Thaddeus Crews 7dbea98c49
Merge pull request #97005 from Repiteo/core/window-corner-style
Core: Add `DisplayServer` flag for sharp corners
2024-10-21 16:39:25 -05:00
Thaddeus Crews 291e4b78e2
Merge pull request #98237 from dustdfg/os_transitive_image_headers_refactor
Don't include `core/io/image.h` in `core/os/os.h`
2024-10-21 16:39:15 -05:00
Thaddeus Crews b6547b0d06
Merge pull request #98236 from timothyqiu/locale-compare-cache-4.x
Cache results for `TranslationServer.compare_locales()`
2024-10-21 16:39:14 -05:00
Thaddeus Crews ecc2eb73fc
Merge pull request #97707 from Sauermann/fix-input-device-clash
Fix `InputEvent` device id clash
2024-10-21 16:39:10 -05:00
Thaddeus Crews 5fb22327ee
Merge pull request #97542 from AThousandShips/dict_sort_fix
[Core] Fix sorting of `Dictionary` keys
2024-10-21 16:39:05 -05:00
Thaddeus Crews ab72082fa2
Core: Update `char_range.inc` to Unicode 16 2024-10-21 14:54:19 -05:00
Yevhen Babiichuk (DustDFG) ee5d90853f Allow use RID with `in` operator for Arrays and Dictionaries
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-10-21 11:50:41 +03:00
Hilderin fbd1643176 Fix lost of gdextension on editor startup.
Co-authored-by: NetroScript <noreply@enostrion.com>"
2024-10-20 18:39:31 -04:00
Markus Sauermann 916d480686 Fix InputEvent device id clash
`InputMap::ALL_DEVICES` and `InputEvent::DEVICE_ID_EMULATION` have the
same value `-1`.

Change value of `InputMap::All_DEVICES` so that it's different from
`InputEvent::DEVICE_ID_EMULATION`. `InputEvent::DEVICE_ID_EMULATION`
is part of the API and can't be changed without potentially breaking
projects.

Gather all special device constants in a single location inside
`InputEvent`.

Add a converter to project settings, that takes care of adjusting
project files during loading.
2024-10-20 21:56:41 +02:00
yeojunh b3b24ded19 Add checks for valid base in String::num_int64, uint64().
- Ensure String::num_int64, uint64 returns an empty string for bases less than 2 or greater than 36.
- Added corresponding test cases to verify the behavior.
- Error messages are printed when invalid bases are encountered. These messages are suppressed in the test output.
2024-10-20 00:22:08 -07:00
alexkar598 fd6138ed7e Fixes window_id being erased when emulating mouse events from touch events 2024-10-18 15:37:39 -04:00
Thaddeus Crews f8c4a683d7
Core: Add `DisplayServer` flag for sharp corners 2024-10-18 11:20:21 -05:00
Yevhen Babiichuk (DustDFG) af6d260c17 Don't include `core/io/image.h` in `core/os/os.h`
`core/os/os.h` doesn't use `core/io/image.h`. It just brings
transitive dependencies. Lots of dependencies because `core/os/os.h`
is transitively included in almost every file of godot

Also added `core/io/image.h` into files^1 where `Ref<Image>` and `core/os/os.h`
were used to prevent obscure errors involving `Ref<Image>`

^1 except those which include `core/io/image_loader.h` or `core/io/image.h` by
corresponding .h file with the same name

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-10-18 19:04:19 +03:00
A Thousand Ships 79f654ced5
[Core] Fix sorting of `Dictionary` keys
`StringName` keys were sorted as `StringName` which is unstable.
2024-10-18 08:47:05 +02:00
Haoyu Qiu f61fe2799c Don't pseudolocalize empty strings 2024-10-17 10:30:17 +08:00
Haoyu Qiu acab2d6c1c Cache results for `TranslationServer.compare_locales()` 2024-10-16 20:54:56 +08:00
Hunter Loftis bbb8c1703b Fix freeze on non-thread-safe custom importers 2024-10-15 11:46:14 -04:00
Thaddeus Crews a1e768c508
Merge pull request #97295 from BlueCube3310/betsy-bc4
Betsy: Implement BC4 compression
2024-10-14 14:09:56 -05:00
bruvzg 0d7027ea4c
Add support for 24-bit color escape sequences, simplify `print_rich` BBCode parsing. 2024-10-13 22:31:57 +03:00
Thaddeus Crews 9d5a7321a5
Merge pull request #95175 from KoBeWi/bruh_can_revert
Fix implementation of `property_can_revert()` in various classes
2024-10-10 18:13:16 -05:00
Ricardo Buring 9652695f6f Restore arc_tolerance value when using Clipper2's InflatePaths
This was missed when upgrading from Clipper to Clipper2.
2024-10-09 14:13:23 +02:00
Gergely Kis 257633c354 Make TranslationServer singleton variable inline.
This change avoids the problem known as 'Static Initialization Order Fiasco' (SIOF).

See the following PR for more explanation: https://github.com/godotengine/godot/pull/94683

Co-authored-by: Gabor Koncz <gabor.koncz@migeran.com>
2024-10-07 13:47:42 +02:00
Juan e05d5b8813 Provide a reliable way to see original resources in a directory
When exporting a project, resources are often moved, converted or
remapped (source import files are gone, text scenes are converted to binary,
etc).

This new function allows to list a directory and obtain the actual original
resource files.

Example

```GDScript
var resources = ResourceLoader.list_directory("res://images")
print(resources)
```
Result will be something like:
```
["image1.png","image2.png","image3.png"]
```
instead of
```
["image1.png.import","image2.png.import","image3.png.import"]
```
2024-10-07 09:47:22 +02:00
Haoyu Qiu 33d9b40386 Fix "No loader found" error after editing PO file
PO files used to be loaded as simple `Translation` resources. We later
added a dedicated `TranslationPO` resource for it. But the loader still
thinks it can only handle `Translation` resources, so it refuses to load
the updated `TranslationPO` resource.
2024-10-06 12:22:20 +08:00
kobewi b9d25580ce Fix implementation of property_can_revert() in various classes 2024-10-04 23:02:04 +02:00
bruvzg 794920b1ff
Partially revert 96780, remove warnings from project/editor settings `_get`. 2024-10-04 19:13:03 +03:00
Rémi Verschelde 6c15d59154
Merge pull request #97362 from reduz/make-unique-scene-id-deterministic
Make internal unique scene resource ID deterministic
2024-10-04 17:18:10 +02:00
Rémi Verschelde 4dd812f2ed
Merge pull request #97119 from dsnopek/gdextension-object-instance-id
GDExtension: Allow directly getting `ObjectID` from `Variant`
2024-10-04 17:18:06 +02:00
Rémi Verschelde 8e6ade8708
Merge pull request #97465 from DarioSamo/lock-free-rid
Make `RID_Owner` lock-free for fetching.
2024-10-04 11:21:38 +02:00
Rémi Verschelde 05b519fafb
Merge pull request #96230 from timothyqiu/per-domain-pseudolocalization
Move pseudolocalization into `TranslationDomain`
2024-10-04 11:21:18 +02:00
Aaron Franke a7f6ec0e4c
Add a sort method to Dictionary and HashMap 2024-10-02 14:26:33 -07:00
Rémi Verschelde 86b1514bf5
Merge pull request #97550 from AThousandShips/hash_fix
[Core] Add missing `HashMapComparatorDefault` cases
2024-10-02 15:01:09 +02:00
Rémi Verschelde 336d91551d
Merge pull request #97281 from reptofrog/deadzone-new-default
Input: Change the default deadzone value for new actions from 0.5 to 0.2
2024-10-02 15:01:02 +02:00
Rémi Verschelde 9ce149c7a3
Merge pull request #93299 from rune-scape/fix-ref
Fix RefCounted releasing early and not clearing reference
2024-10-02 15:00:47 +02:00
Rémi Verschelde 79804a8e77
Merge pull request #97647 from KoBeWi/yearly_REPL_pull_request
Add expression evaluater to debugger (REPL)
2024-10-01 17:31:31 +02:00
Rémi Verschelde 3b17e3470a
Merge pull request #97532 from kisg/use_loader_library_check
GDExtension: Use loader to check if the library exists.
2024-10-01 17:31:14 +02:00
Rémi Verschelde cf1d910e10
Merge pull request #92237 from timothyqiu/url-fragment
String: Parse fragment from URL
2024-10-01 17:30:16 +02:00
kobewi 645abdbb80 Add expression evaluater to debugger (REPL)
Co-authored-by: rohanrhu <rohanrhu2@gmail.com>
2024-10-01 15:36:09 +02:00
Roman Morozov d532eecc81 Changed the default deadzone value for new actions from 0.5 to 0.2 2024-10-01 16:47:44 +04:00
Gergely Kis 8a41b1d90f GDExtension: Use loader to check if the library exists. 2024-09-29 07:38:45 +02:00
Wenqiang 9a94353fa3 Added support for 'print' command in local (command line -d) debugger 2024-09-28 13:28:07 -07:00
A Thousand Ships 75cb3539b1
[Core] Add missing `HashMapComparatorDefault` cases
Added for:
* `AABB`
* `Basis`
* `Color`
* `Plane`
* `Projection`
* `Quaternion`
* `Rect2`
* `Transform2D`
* `Transform3D`
* `Vector4`

Ensures these handles `NaN` correctly
2024-09-28 17:58:49 +02:00
Danil Alexeev 85dfd89653 Add `@export_tool_button` annotation for easily creating inspector buttons
Co-authored-by: jordi <creptthrust@gmail.com>
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
Co-authored-by: Mack <86566939+Macksaur@users.noreply.github.com>
2024-09-27 22:24:15 +01:00
Rémi Verschelde 83b2ca3107
Merge pull request #95930 from aaronfranke/bind-array-set
Bind Array and Packed*Array `get` and `set` functions
2024-09-27 13:53:19 +02:00
Rémi Verschelde 8a9a26ef19
Merge pull request #93311 from dsnopek/gdextension-required-virtuals
GDExtension: Mark virtual function as `is_required` in `extension_api.json`
2024-09-27 13:53:16 +02:00
Haoyu Qiu 6516ca6b11 Parse fragment from URL 2024-09-27 19:42:30 +08:00
Aaron Franke cc9f2b58a0
Bind Array get and set functions 2024-09-26 13:00:17 -07:00
Lukas Tenbrink e117ed9cd4
Rename Vector4.components -> coord 2024-09-26 14:02:00 +02:00
Rémi Verschelde a4c1804cab
Merge pull request #97483 from akien-mga/clang-format-19.1.0
CI: Update `clang-format` pre-commit hook to 19.1.0
2024-09-26 12:46:04 +02:00
Rémi Verschelde 2912cb9975
Merge pull request #97118 from mihe/patch-exports
Add ability to export patch packs
2024-09-26 12:45:42 +02:00
Rémi Verschelde 991e6c92ab
Merge pull request #96923 from Repiteo/style/warning-admonition
Style: Add `WARNING:` as new comment admonition
2024-09-26 12:45:38 +02:00
Rémi Verschelde ef7547384c
Merge pull request #95678 from Hilderin/fix-slow-load-on-large-project-v2
Fix slow editor load on large projects (v2)
2024-09-26 12:45:31 +02:00
Rémi Verschelde 9d5b59b2ae
Merge pull request #94864 from rune-scape/add-missing-method-bind
Add missing CallableCustomMethodPointer for const methods
2024-09-26 12:45:27 +02:00
Rémi Verschelde c92a6c7e27
CI: Update `clang-format` pre-commit hook to 19.1.0 2024-09-26 11:46:12 +02:00
Hilderin 21f7c8a25f Fix slow editor load on large projects (v2) 2024-09-25 17:36:39 -04:00
Juan Linietsky 08947d366f Make RID_Owner lock-free for fetching.
This PR makes RID_Owner lock free for fetching values, this should give a very
significant peformance boost where used.

Some considerations:

* A maximum number of elements to alocate must be given (by default 256k).
* Access to the RID structure is still safe given they are independent from addition/removals.
* RID access was never really thread-safe in the sense that the contents of the data are not protected anyway. Each server needs to implement locking as it sees fit.
2024-09-25 15:05:24 -03:00
Mikael Hermansson d3be030ea6 Add ability to export patch packs
Co-authored-by: Poq Xert <poqxert@poqxert.ru>
2024-09-25 17:07:28 +02:00
Thaddeus Crews 32c83a228d
Style: Add `WARNING:` as new comment admonition 2024-09-25 09:44:42 -05:00
Thaddeus Crews 9f9ee0c813
SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 -05:00
kobewi 7aef30c2a8 Discard additional redo on commiting actions 2024-09-24 15:47:55 +02:00
rune-scape a84c480049 Add missing CallableCustomMethodPointer for const methods 2024-09-23 11:46:10 -07:00
Rémi Verschelde 4254946de9
Merge pull request #97323 from timothyqiu/drop-unicode-identifier
Fix script editor wrongly replaces and quotes non-ASCII letters
2024-09-23 16:14:08 +02:00
Rémi Verschelde 8c273eb14c
Merge pull request #90955 from AThousandShips/print_to_stdout
[Core] Add `Engine.print_to_stdout` setting to control printing
2024-09-23 16:13:41 +02:00
Juan abf9d24520 Make internal unique scene resource ID deterministic
Changes the Resource::generate_scene_unique_id() to be deterministic and
seedable.

Fixes #97110
2024-09-23 15:07:00 +02:00
Rémi Verschelde 9c9e704a2b
Merge pull request #97286 from Rynzier/master
Clarify PCK path argument in `PCKPacker.pck_start`
2024-09-23 12:28:14 +02:00
Rémi Verschelde 1b19ecb360
Merge pull request #95166 from aaronp64/variant_op_err_return
Assign return value on `Variant` operator failure
2024-09-23 12:27:51 +02:00
Rémi Verschelde 510bc3dc6a
Merge pull request #90969 from Naros/expose-resource-and-saver-methods
Expose several resource/resource-saver functions
2024-09-23 12:27:40 +02:00
Rynzier 7b7164c80c
Clarify PCK path argument in `PCKPacker.pck_start`
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-09-23 09:42:13 +02:00
Chris Cranford bc3dcf3d40 Expose several resource/resource-saver functions 2024-09-22 15:27:13 -04:00
Haoyu Qiu a751c05b15 Fix script editor wrongly replaces and quotes non-ASCII letters 2024-09-23 00:05:16 +08:00
A Thousand Ships d49ec39d63
[Core] Add `Engine.print_to_stout` setting to control printing
Also added notes to the related project settings pointing to the
`Engine` properties.
2024-09-22 12:09:01 +02:00
BlueCube3310 95fd45d9a5 Betsy: Implement BC4 compression 2024-09-22 10:16:37 +02:00
rune-scape cee0e6667a Refactor ref-counting code and fix ref counted releasing before aquiring 2024-09-21 11:36:58 -07:00
Haoyu Qiu cca54ba4db Move pseudolocalization into TranslationDomain
Also adds command-line option `--editor-pseudolocalization`
2024-09-21 18:28:12 +08:00
Rémi Verschelde dd7cb059f5
Merge pull request #87344 from AThousandShips/signal_connected
[Core] Add way to check if a signal has any connections
2024-09-21 11:50:24 +02:00
Rémi Verschelde 621cadcf65
Merge pull request #97168 from Hilderin/fix-reloading-scripts-already-in-use
Fix reloading scripts already in use
2024-09-20 21:35:08 +02:00