Commit Graph

6729 Commits

Author SHA1 Message Date
Rémi Verschelde 4247244071
Merge pull request #85280 from bruvzg/custom_call_read_after_free
Prevent read-after-free in the queued CallableCustomStaticMethodPointer.
2023-11-24 00:00:52 +01:00
bruvzg eb81e8b2dc
Prevent read-after-free in the queued CallableCustomStaticMethodPointer. 2023-11-23 23:22:08 +02:00
Pedro J. Estébanez bfe66ab7cd Fixup thread-owned lambda bookkeeping on thread exit (take 2) 2023-11-23 18:50:20 +01:00
Yuri Sizov bc1949d797 Correctly check scripts that must inherit `EditorPlugin`
Also updates some error messages related to this kind of check
across the codebase.
2023-11-23 16:24:43 +01:00
kobewi 1de0415118 Don't abort loading when ext_resource is missing 2023-11-22 12:13:32 +01:00
Pedro J. Estébanez fe4850c0d0 Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
bruvzg 932174fedf
[Editor] Add option to override editor UI layout direction. 2023-11-17 14:56:45 +02:00
Rémi Verschelde 47c7abc212
Merge pull request #84973 from dsnopek/gdextension-fix-compat-hashes
Check that `GDExtensionCompatHashes` are valid when generating `extension_api.json`
2023-11-16 14:53:39 +01:00
Rémi Verschelde 6ae6cc0bf5
Merge pull request #84815 from TokageItLab/array-animation
Rework blending method in `Variant` animation for `Int`/`Array`/`String`
2023-11-16 14:52:00 +01:00
David Snopek 5cf6d08dda Check that GDExtensionCompatHashes are valid when generating extension_api.json 2023-11-16 06:40:06 -06:00
Silc Lizard (Tokage) Renew 80c9533810 Rework blending method in Variant animation for Int/Array/String 2023-11-16 21:37:18 +09:00
Alistair Leslie-Hughes 5b6f641e99 Fix sizeof usage for Variant pointers in alloca
Coverity report this as a non portable usage of sizeof
2023-11-16 07:13:14 +11:00
Saracen f392a9c4f8 Fix CACHE_MODE_REPLACE 2023-11-15 18:55:20 +00:00
Rémi Verschelde dcee5cf9fa
Merge pull request #84884 from akien-mga/donors-sync-new-tiers
Donors: Change tiers to match Dev Fund, sync latest data
2023-11-14 19:31:50 +01:00
Rémi Verschelde a28476d1cd
Merge pull request #84847 from RandomShaper/lang_init_term
Let languages init & finish run without locks held
2023-11-14 19:31:37 +01:00
Rémi Verschelde ff5ac866e8
Donors: Change tiers to match Dev Fund, sync latest data
The new list includes all donors listed on fund.godotengine.org,
together with the ones still on Patreon on matching tiers.

We haven't yet updated Patreon tiers to match the Dev Fund, so donors
who used to be listed under "Silver donors" are now grandfathered under
the "Gold members" category from the Dev Fund.
2023-11-14 15:40:44 +01:00
Rémi Verschelde 40cdd22d57
Merge pull request #84873 from bruvzg/locale_rempas
Fix remapped font reloading on locale change.
2023-11-14 12:17:39 +01:00
bruvzg 8b2260544a
Fix remapped font reloading on locale change. 2023-11-13 21:25:41 +02:00
Pedro J. Estébanez f05f8c399e Let languages init & finish run without locks held 2023-11-13 16:06:48 +01:00
kobewi 4296f0a771 Fill remaining global scope constant descriptions 2023-11-13 15:17:10 +01:00
Rémi Verschelde 404c995ab3
Merge pull request #84795 from TheSofox/prevent-property-change-output-spam
Reduced output spam from rapid property changes
2023-11-12 23:00:31 +01:00
Rémi Verschelde 2bcc2a3cd0
Merge pull request #84791 from akien-mga/fix-translation-remapping-check
Fix translation remapping check for imported resources
2023-11-12 23:00:08 +01:00
Sofox 4006397339 Reduced output spam from rapid property changes 2023-11-12 14:49:51 +00:00
Rémi Verschelde 2729a78fd7
Fix translation remapping check for imported resources
Fixes #81660.
2023-11-12 13:17:12 +01:00
Rémi Verschelde 747bff0bff
Merge pull request #84685 from KoBeWi/TIWAGOS
Rework input actions to be reliable
2023-11-12 12:15:07 +01:00
Rémi Verschelde 8928b2044b
Merge pull request #80281 from KoBeWi/unacceptable
Assign temporary path to preloaded resources
2023-11-12 12:13:55 +01:00
Rémi Verschelde ba713c80df
Fix various typos with codespell
Using 2.2.7.dev51+geb4a58fe.
2023-11-11 23:01:24 +01:00
Rémi Verschelde 96fa86f9a0
Merge pull request #84557 from TheSofox/undo-history-sync-fix
Fix for stopping the Undo History being desynchronised from actual Undo queue
2023-11-10 21:55:46 +01:00
kobewi d9d0cfaf38 Rework input actions to be reliable 2023-11-10 15:24:04 +01:00
Sofox 662522ae5a Fix for stopping the Undo History being desynchronised from actual Undo queue. 2023-11-10 13:04:12 +00:00
Rémi Verschelde dfe2df989d
Merge pull request #84493 from bruvzg/gde_ios_static_fix
[iOS, GDExtension] Fix loading and exporting static libraries and xcframeworks.
2023-11-10 10:44:56 +01:00
kobewi a3627b6e37 Assign temporary path to preloaded resources 2023-11-10 00:43:30 +01:00
Rémi Verschelde b06fe0d574
Merge pull request #84620 from dsnopek/gdextension-library-path-absolute
Change `GDExtension`'s `library_path` back to an absolute path
2023-11-09 20:04:45 +01:00
bruvzg d4d5d68eda
[iOS, GDExtension] Fix loading and exporting static libraries and xcframeworks. 2023-11-09 20:04:40 +02:00
David Snopek 09fcc3a1ad Change `GDExtension`'s `library_path` back to an absolute path 2023-11-09 11:24:57 -06:00
Rémi Verschelde c2246a5a6f
Merge pull request #84668 from YuriSizov/gui-dont-warn-when-popup-subs-are-nameless
Allow auto-generated node names in `PopupMenu::add_submenu_item`
2023-11-09 18:10:35 +01:00
Rémi Verschelde 19db9308ff
Merge pull request #84657 from RandomShaper/lang_srv_threading
Make languages bookkeeping thread-safe
2023-11-09 18:09:01 +01:00
Pedro J. Estébanez f3e96a8548 Make languages bookkeeping thread-safe 2023-11-09 18:03:43 +01:00
Yuri Sizov edcad2ea88 Allow auto-generated node names in `PopupMenu::add_submenu_item` 2023-11-09 17:12:41 +01:00
Rémi Verschelde aaafc69132
Merge pull request #84513 from bruvzg/x11_fallback_and_spam
[X11] Add fallback from desktop GL to GLES, suppress PRIME detector error spam.
2023-11-09 11:46:36 +01:00
Rémi Verschelde ce53362f98
Merge pull request #83670 from raulsntos/notification-predelete-cleanup
Add `NOTIFICATION_PREDELETE_CLEANUP` notification to fix C# `Dispose()`
2023-11-09 11:45:49 +01:00
kobewi 275e9d7028 Keep Variant type after zero() 2023-11-08 12:13:36 +01:00
bruvzg f3d4f5a77e
[X11] Add fallback from desktop GL to GLES, suppress PRIME detector error spam. 2023-11-06 12:40:44 +02:00
jsjtxietian 8f6e8ef0d7 clean unnecessay copy detected by clang-tidy 2023-11-06 16:22:32 +08:00
MewPurPur 931928feb9 Optimize String.humanize_size() 2023-11-05 02:42:54 +02:00
Aaron Franke 58076b9ccb
Implement glTF compat version system for files from older Godot versions 2023-11-03 12:07:25 -05:00
Yuri Sizov b733901e9e Merge pull request #84354 from RandomShaper/gdext_no_cache_doc
Polish & fix editor help cache generation
2023-11-02 20:34:22 +01:00
Yuri Sizov 1b42673b42 Merge pull request #84315 from dsnopek/gdextension-windows-modification-time
GDExtension: Save and compare modification times separately for reload
2023-11-02 20:34:15 +01:00
Wilson E. Alvarez dbc49d2a68
Add const references in String class 2023-11-02 13:49:39 -04:00
David Snopek f86054e3a0 GDExtension: Save and compare modification times separately for reload 2023-11-02 08:29:22 -05:00
Pedro J. Estébanez a1d8fc1af9 Polish & fix editor help cache generation
- Isolated the generation of extensions's docs. They're now not cached and refreshed as needed.
- Removed superfluous sorting of the class list.
- Removed some superfluous/unused elements.
- Renamed some items for clarity.
2023-11-02 13:46:37 +01:00
Thomas ten Cate 2263d94cc3 Add comment why off-by-one error is hard to fix
See #83843

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-11-01 11:14:13 +01:00
Rémi Verschelde a3e4c4f41c
Merge pull request #84155 from AThousandShips/encode_fix
Prevent `encode_variant` doing `memcpy` from `nullptr`
2023-10-30 23:19:22 +01:00
K. S. Ernest (iFire) Lee 9877fa5058 Fix uninitialized variable in Image::fix_alpha_edges()
`core\io\image.cpp:3776:33: error: 'closest_color[0]' may be used uninitialized [-Werror=maybe-uninitialized]`
2023-10-29 22:59:03 -07:00
A Thousand Ships 210461f2ed Prevent `encode_variant` doing `memcpy` from `nullptr` 2023-10-29 18:06:21 +01:00
BlueCube3310 6ed1731746 Use platform-specific methods for FileAccess reading and writing 2023-10-29 17:34:18 +01:00
Danil Alexeev b04263644c
Core: Allow methods of built-in `Variant` types to be used as Callables 2023-10-25 15:53:52 +03:00
Rémi Verschelde f7c43a8a19
Merge pull request #83800 from dsnopek/gdextension-callable-custom-object-id
GDExtension: Use `ObjectID` when creating custom callable
2023-10-25 10:29:58 +02:00
Rémi Verschelde e0b23ac420
Merge pull request #83845 from akien-mga/sync-gamecontrollerdb
Sync controller mappings DB with SDL2 community repo
2023-10-24 10:54:48 +02:00
Rémi Verschelde a1fd0b9d8a
Merge pull request #83782 from timothyqiu/self-awareness
Fix heap-use-after-free when resource loaded with `load_threaded_request` is never fetched
2023-10-24 10:54:31 +02:00
Rémi Verschelde bc5d5978ea
Merge pull request #83695 from YuriSizov/core-lock-and-key
Improve threading in ClassDB and EditorHelp
2023-10-24 10:54:19 +02:00
Rémi Verschelde 792afd2cad
Merge pull request #83588 from voidedWarranties/fix_sle_validate
Add `path` option to `ScriptLanguageExtension::_validate`
2023-10-24 10:54:11 +02:00
Rémi Verschelde d3c0a7d598
Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@eb831f75ab

Fixes #83552.
2023-10-23 16:11:38 +02:00
David Snopek b0a33cac7c GDExtension: Use ObjectID when creating custom callable 2023-10-23 09:05:17 -05:00
Haoyu Qiu dc7e309f48 Fix heap-use-after-free when resource loaded with load_threaded_request is never fetched
Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2023-10-23 16:21:17 +08:00
voidedWarranties e8309dd192 Add `path` option to `ScriptLanguageExtension::_validate` 2023-10-22 21:49:34 -07:00
Rémi Verschelde 542f6e10eb
Merge pull request #83734 from MarioLiebisch/fix-extension-load-error
GDExtension: Fixed error on loading extensions
2023-10-22 12:12:17 +02:00
Rémi Verschelde 14913f178b
Merge pull request #83434 from Chubercik/optimize_triangulate_delaunay
Update `triangulate_delaunay()` to avoid needless reallocations
2023-10-22 12:11:53 +02:00
Mario Liebisch f2bcd7d61f
GDExtension: Fixed error on loading extensions
Previously, before loading an extension, the editor just tried to
retrieve the extension by path to test if it's been loaded already.

While this is handled gracefully, it ignored an error thrown inside
`GDExtensionManager::get_extension()`, that would essentially still
report a not yet loaded extension to the engine's log:

```
ERROR: Condition "!E" is true. Returning: Ref<GDExtension>()
   at: GDExtensionManager::get_extension (core\extension\gdextension_manager.cpp:165)
```

This change actively checks whether the extension path is known and only
then proceeds to actually return the already loaded extension or loads
and returns the new one otherwise.
2023-10-21 17:00:18 +02:00
Yuri Sizov 9b03fb36f9 Improve threading in ClassDB and EditorHelp 2023-10-20 22:14:04 +02:00
Rémi Verschelde f68fa0fedf
Merge pull request #83681 from dsnopek/gdextension-iter-get
GDExtension: Fix `variant_iter_get()` actually calling `iter_next()`
2023-10-20 22:02:51 +02:00
Rémi Verschelde e6e9b04aab
Merge pull request #81322 from johnnyw/android_fix_joypad_trigger_range
Android: Fix joypad trigger value range
2023-10-20 22:02:00 +02:00
John Watson d413a02079 Android: Fix joypad trigger value range
`Input::joy_axis` converts trigger values to be between 0.0f to 1.0f by default. This is not needed for Android, as values are already within that range, as per Android documentation: https://developer.android.com/reference/android/view/MotionEvent#AXIS_RTRIGGER

This patch prevents this conversion on Android, which caused L2 and R2 triggers to get stuck pressed. https://github.com/godotengine/godot/issues/79263
2023-10-20 11:30:20 -07:00
David Snopek b14f359c94 GDExtension: Fix `variant_iter_get()` actually calling `iter_next()` 2023-10-20 10:07:46 -05:00
Rémi Verschelde a63bff4ce4
Merge pull request #83619 from YuriSizov/core-our-vessel-only-has-one-node-left
Fix StringName leaks in VariantParser
2023-10-20 15:11:24 +02:00
Rémi Verschelde 01a8064760
Merge pull request #83583 from anrp/anrp/gdvirtboth
Allow coexistence of GDScript and GDExtension virtual methods in the same object
2023-10-20 15:09:27 +02:00
Raul Santos 9750e49c57
Add `NOTIFICATION_PREDELETE_CLEANUP` notification
New notification sent after `NOTIFICATION_PREDELETE` to let Objects cleanup at the very end, it should be the last notification sent.
2023-10-20 13:43:42 +02:00
Yuri Sizov 4952d37f4b Fix StringName leaks in VariantParser 2023-10-19 17:13:15 +02:00
anrp 4c33c60500 Allow coexistance of GDScript and GDExtension virtual methods in the same object
Resolves https://github.com/godotengine/godot-cpp/issues/1224
2023-10-19 10:21:26 -04:00
Yuri Sizov 582ed157b5 Fix StringName leaks in GDExtension, core, and editor themes 2023-10-18 17:36:20 +02:00
Rémi Verschelde e6d488f233
Merge pull request #81196 from georgwacker/add-audiosession-options
Add project settings for AVAudioSessionCategory on iOS
2023-10-17 16:12:49 +02:00
Georg Wacker fcc500ea41 Add project settings for AVAudioSessionCategory on iOS 2023-10-17 12:35:49 +02:00
Emmanuel Leblond fd33c7b32f
Merge pull request #83415 from touilleMan/fix-comment-gdextension_interface
Fix comment in `gdextension_interface.h`
2023-10-16 21:42:01 +02:00
Emmanuel Leblond 5aa9f1ce64
Fix comment in gdextension_interface.h 2023-10-16 21:40:45 +02:00
Rémi Verschelde 3bc1c9b5e0
Merge pull request #82797 from RandomShaper/fix_rbmap
Fix `RBMap`'s, iterator-based, `remove()`
2023-10-16 20:16:16 +02:00
Rémi Verschelde eb9903b4ce
Merge pull request #83285 from dsnopek/gdextension-double-reload
GDExtension: Prevent issues with the editor trying to reload GDExtensions through its usual mechanism
2023-10-16 18:44:51 +02:00
Rémi Verschelde 50212ecfdb
Merge pull request #78882 from dalexeev/gds-fix-utility-func-err-msg
GDScript: Fix incorrect error message for utility functions
2023-10-16 18:43:11 +02:00
Danil Alexeev 0c2202c56e
GDScript: Fix incorrect error message for utility functions 2023-10-16 14:09:57 +03:00
Jakub Marcowski c33e291474 Update `triangulate_delaunay()` to avoid needless reallocations 2023-10-16 12:37:57 +02:00
Jakub Marcowski bc78c832e9 Expose 3D Delaunay tetrahedralization in `Geometry3D` 2023-10-16 11:48:49 +02:00
ErezShahaf ccb8ea613a
Fix `Input.is_action_just_pressed` flicker on joypad axes
Pressed tick assignments were in the wrong scope, resulting in updating
`pressed_frame` even when it shouldn't and therefore the `just_pressed`
would return true every time that the strength changes and not only when
there's a new valid press.

Fixes #81975.
2023-10-16 11:41:56 +02:00
Rémi Verschelde c7b75c0226
Merge pull request #83318 from rburing/gdextension_dump_brief_description
Add brief description in GDExtension API dump with docs
2023-10-16 10:41:23 +02:00
Rémi Verschelde 4a6e8dc57b
Merge pull request #83146 from pancelor/fix-tilemap-liveupdate
Fix tilemap live editing while game is running
2023-10-16 10:39:48 +02:00
pancelor d66b1752b8 Fix tilemap live editing while game is running 2023-10-14 18:54:03 -07:00
Ricardo Buring c87b2a606e Add brief description in GDExtension API dump with docs
Also rename the "documentation" key to "description" for internal
consistency.
2023-10-14 12:06:37 +02:00
David Snopek 16a86b9604 GDExtension: Prevent issues with the editor trying to reload GDExtensions through its usual mechanism 2023-10-13 13:24:29 -05:00
Rémi Verschelde 51f81e1c88
Merge pull request #82957 from bruvzg/fs_case_check
Add method to check if filesystem is case sensitive.
2023-10-13 12:55:35 +02:00
Thaddeus Crews d8fdd419fa
Apply missing flag to vector4/projection 2023-10-12 11:18:45 -05:00
Jakub Marcowski cb954c6bab Implement `Vector2i/3i/4i` methods: `distance_to` and `distance_squared_to` 2023-10-12 13:46:49 +02:00
Paul Joannon bf3f6e3b55
Error handling for `FileAccess.get_file_as_*`
- Assign last error in said `FileAccess.get_file_as_bytes` and `FileAccess.get_file_as_string`
- Document error handling for said methods
2023-10-11 18:52:16 +02:00
Rémi Verschelde b40d90d333
Merge pull request #83107 from dsnopek/validated-method-vararg-message
GDExtension: Fix incorrect error message about vararg methods
2023-10-10 22:51:41 +02:00
Rémi Verschelde feb6ea21dd
Merge pull request #83054 from dsnopek/gdextension-validated-call-always-ret-pointer
GDExtension: Use correct return pointer for validated calls that return `Variant`
2023-10-10 22:49:41 +02:00
David Snopek 87cb0bfa50 GDExtension: Fix incorrect error message about vararg methods 2023-10-10 08:46:25 -05:00
David Snopek 88b6fee547 GDExtension: Use correct return pointer for validated calls that return `Variant` 2023-10-10 08:31:08 -05:00
Rémi Verschelde 71a8ac41fb
Merge pull request #72751 from dalexeev/doc-comment-color
Highlight doc comments in a different color
2023-10-09 23:21:54 +02:00
Rémi Verschelde a1d7c62df7
Merge pull request #83003 from AThousandShips/null_check_extra
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-09 15:37:14 +02:00
Rémi Verschelde 336260b7b3
Merge pull request #83002 from AThousandShips/safety_check
Replace `sanity` with `safety` for checks
2023-10-09 15:36:49 +02:00
Rémi Verschelde 35ede42d1d
Merge pull request #82695 from maiself/object-less-callables-fixes
Fixes to allow object-less callables throughout Godot
2023-10-09 15:32:38 +02:00
bruvzg 97bcd8a631 Add method to check if filesystem is case sensitive. 2023-10-09 11:00:15 +03:00
Danil Alexeev de7cbe8789
Highlight doc comments in a different color 2023-10-08 19:26:10 +03:00
A Thousand Ships f18aa00e85 Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-10-08 17:23:33 +02:00
A Thousand Ships 034c0f1624 Replace `sanity` with `safety` for checks 2023-10-08 16:22:24 +02:00
Mai Lavelle 5e15586ec2 Fixes to allow object-less callables throughout Godot
This fixes #81887
2023-10-06 16:31:35 -04:00
Rémi Verschelde a6a2d0d159
Merge pull request #82794 from dsnopek/gdextension-validated-call
GDExtension: Convert `validated_call()` to `ptrcall()` (rather than `call()`)
2023-10-06 16:50:57 +02:00
Rémi Verschelde 7c56631419
Merge pull request #82861 from mihe/gdext-entry-false
Fix extensions loading/initializing even when entry point fails
2023-10-05 22:50:35 +02:00
Mikael Hermansson 5c6353ae17 Fix extensions loading/initializing even when entry point fails 2023-10-05 18:24:58 +02:00
Rémi Verschelde af232e63de
Merge pull request #82842 from YuriSizov/gdext-icons-are-relative-maaaan
Resolve relative icon paths for GDExtensions
2023-10-05 16:32:40 +02:00
Yuri Sizov d427851013 Resolve relative icon paths for GDExtensions 2023-10-05 12:49:31 +02:00
Rémi Verschelde c2b916751d
Merge pull request #82786 from theraot/donotreplacestartingdigitwithunderscore
Do not replace starting digit with underscore when making identifier
2023-10-05 12:29:42 +02:00
kobewi 09b30be86d Add vararg call() method to C++ Callable 2023-10-05 11:35:29 +02:00
Rémi Verschelde c7ed5d795e
Merge pull request #82799 from CedNaru/feature/expose_free_instance_binding
Expose `Object::free_instance_binding()` to GDExtension
2023-10-05 10:10:58 +02:00
Ced Naru 0a246e9b54 expose Object::free_instance_binding to GDExtension 2023-10-04 19:24:37 +02:00
Pedro J. Estébanez 5c81236047 Fix RBMap's, iterator-based, remove() 2023-10-04 18:58:28 +02:00
Danil Alexeev ed0b3c08e1
Core: Fix `Object::has_method()` for script static methods 2023-10-04 19:44:32 +03:00
David Snopek 55596eaac6 GDExtension: Convert `validated_call()` to `ptrcall()` (rather than `call()`) 2023-10-04 10:53:17 -05:00
Alfonso J. Ramos 5cd7ca0ccc Do not replace starting digit with underscore when making identifier 2023-10-04 08:05:04 -05:00
Yuri Roubinski 04bb89c0bd Add isometric cell shape mode to `AStarGrid2D`. 2023-10-03 21:04:03 +03:00
Rémi Verschelde dbd4c79c38
Merge pull request #82682 from dsnopek/gdextension-dont-deprecate-script-category
GDExtension: Don't deprecate old method of getting script category
2023-10-03 17:26:41 +02:00
Rémi Verschelde 5efbed51cc GDScript: Improve error messages for invalid indexing
These errors are very common when using an invalid property name
or calling on an object of the wrong type, and the previous message
was a bit cryptic for users.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
Co-authored-by: golfinq <golfinqz@gmail.com>
2023-10-02 14:23:11 -04:00
Jakub Janšta 74c937079c Add type_string() utility 2023-10-02 17:41:20 +02:00
David Snopek cbf939e121 GDExtension: Don't deprecate old method of getting script category 2023-10-02 09:23:27 -05:00
Rémi Verschelde 98d9119cee
Merge pull request #82603 from kkolyan/82601_fix_reload_loop
Fix inconsistent `last_modified_time` handling in GDExtension
2023-10-02 13:16:47 +02:00
Rémi Verschelde 5fe97c5844
Merge pull request #82441 from akien-mga/web-clarify-get_unique_id
Web: Clarify that `OS.get_unique_id` is not supported
2023-10-02 13:16:31 +02:00
Rémi Verschelde e95b7e84a4
Merge pull request #80844 from dalexeev/fix-callable-expected-argc
Fix expected argument count for `Callable` call errors
2023-10-02 13:15:53 +02:00
etti 3a39de4e2f Add rotate_toward and angle_difference to GDScript and C# 2023-10-01 22:19:42 +02:00
kkolyan 43f92e4752 Fix inconsistent last_modified_time handling (prevent GDExtension reload spam on Windows 10) 2023-10-01 22:05:57 +04:00
Danil Alexeev aff767ef07
Fix expected argument count for `Callable` call errors 2023-09-29 20:00:10 +03:00
风青山 e705aa4550 Fix not refitting upward from leaf nodes.
Previously, the wrong node id (root node id) was used. Dirty leaf nodes
do not actually recalculate aabb.

Additionally, when requesting a new leaf, mark `dirty` as `false` in `clear()`.

Make sure to only mark the leaf as **dirty** when shrinking the border of
the leaf when removing items.

In other cases, the leaf node's aabb will get the correct result immediately.
1. When adding an item, the leaf nodes will be calculated immediately.
2. Removing the item within the border of the leaf node has no effect on the
original aabb.
2023-09-28 20:27:51 +08:00
Yuri Sizov 5f53ec9129 Merge pull request #78995 from Gallilus/master
Allow implementing `get_class_category` in GDExtension
2023-09-27 19:07:50 +02:00
David Cambré 531f56e830 add GDExtensionScriptInstanceGetClassCategory
Change GetClassCategory so it is handled in native directly
2023-09-27 17:45:48 +02:00
Rémi Verschelde 0a10f09ce4
Web: Clarify that `OS.get_unique_id` is not supported
Remove the base error message in `OS`, we no longer really error out this
way for not implemented methods. Instead, each platform should override them
to provide the context they want.

Fixes #82439.
2023-09-27 15:17:45 +02:00
Rémi Verschelde ec62b8a3ee
Merge pull request #82436 from Rindbee/fix-axis-being-mixed-up
Fix axis getting mixed up when split leaf
2023-09-27 14:03:51 +02:00
Rémi Verschelde d616c3ecd0
Merge pull request #82408 from hpvb/fix-import-crash
Fix Image import crash
2023-09-27 14:03:47 +02:00
Rémi Verschelde 737c308dcc
Merge pull request #74588 from puchik/float-variant-nan-inequality
Support numeric/binary hash comparison for floats derived from Variants (as well as existing semantic comparison)
2023-09-27 14:03:34 +02:00
Rémi Verschelde 19057c07bc
Merge pull request #67080 from Mickeon/resource-virtual-local-to-scene-setup
Reimplement Resource.`_setup_local_to_scene` & deprecate signal
2023-09-27 14:03:28 +02:00
风青山 0156860ad5 Fix axis getting mixed up when split leaf 2023-09-27 17:56:12 +08:00
Hein-Pieter van Braam b5705958e6 Fix import crash
I was trying to import a solid colored metal/roughness texture that
worked in Godot 4.1.1 but failed to load on master. I eventually tracked
it down to this: to_x and to_y can be 0, which then leads them to be -1
later, which then causes ofs to overflow.

Some of these cases were hidden because of the use of Vector so we were
just happily scribbling in ram elsewhere.

Switched to LocalVector as it made debugging a bit easier.
2023-09-26 23:50:50 +02:00
Rémi Verschelde 251fb83d53
Merge pull request #82331 from rburing/gdextension_dump_docs
Optionally include documentation in GDExtension API dump
2023-09-26 22:46:34 +02:00
Ricardo Buring 8ee04c5f87 Optionally include documentation in GDExtension API dump 2023-09-26 21:39:24 +02:00
Rémi Verschelde da91cf9367
Merge pull request #82347 from SaracenOne/dir_access_checks
Add error checks for DirAccess creation
2023-09-26 16:36:47 +02:00