1db0a60dc0
Replace std::size usage with std_size to avoid <iterator> include.
2025-10-05 00:26:11 +02:00
93fd5c7ad0
Merge pull request #110907 from beicause/extension-deconstruct-before-object
...
Free script and extension instance before object deconstructing
2025-09-30 18:35:10 -05:00
6b22951162
Merge pull request #107954 from stuartcarnie/unix_domain_socket_support
...
Add Core UNIX domain socket support
2025-09-30 18:35:08 -05:00
e256771e86
Merge pull request #108836 from aaronfranke/json-grisu
...
Use num_scientific (Grisu2) when stringifying JSON with full precision
2025-09-30 11:19:12 -05:00
fdf32d1b2a
Merge pull request #108577 from YYF233333/global_class_list
...
Simplify `ScriptServer::get_global_class_list`
2025-09-30 11:19:10 -05:00
f6fc2f4a08
Core: Remove skip_cr argument from String
2025-09-28 10:07:24 -05:00
727066fe1f
Free script and extension instance before object deconstructing
...
Co-Authored-By: Lukas Tenbrink <lukas.tenbrink@gmail.com >
2025-09-26 18:15:08 +08:00
7227fdd805
Core: Add UNIX domain socket support
...
> [!NOTE]
>
> Later versions of Windows has support for `AF_UNIX`, so it could be
> added.
2025-09-26 05:46:19 +10:00
a238af4d20
Use num_scientific (Grisu2) when stringifying JSON with full precision
2025-09-24 08:21:37 -07:00
666ed1b51c
Image: Make fill method also fill the mipmaps
2025-09-23 14:55:04 +02:00
8265bb8b6a
Merge pull request #110097 from aaronp64/array_tests
...
Add more `Array` tests
2025-09-19 13:07:13 -05:00
1e84bc4d9c
Merge pull request #108260 from Silver1063/master
...
Fix modifier order in keycode string generation
2025-09-18 12:42:20 -05:00
a50fc5acd8
Change ClassDB::get_class_list and related stuff.
2025-09-16 15:00:33 +08:00
2b855d831d
Add more Array tests
...
Added more tests for Array, focusing on methods exposed to gdscript that didn't have tests.
2025-08-30 13:12:16 -04:00
b626695f70
Fix internal JSON stringify not preserving p_full_precision
2025-07-21 08:36:29 -07:00
00f5b230be
Fix modifier order in keycode string generation
...
Fix the order in which modifier keys are appended in as_text() and keycode_get_string() to ensure consistent and logical ordering (Ctrl, Alt, Shift, Meta). Refactored keycode_get_string() to use a vector for building the key string, improving readability and maintainability.
2025-07-06 14:23:50 -07:00
296aba7dc5
Fix CSV translation not updating after reimport
2025-06-17 17:22:49 +08:00
477a37a594
Fix Resource Duplication test errors
2025-06-15 12:48:03 -04:00
2d0ff9774d
Add a smoke test to Span in debug builds to recover from non-empty nullptr Span.
2025-06-12 12:19:21 +02:00
61639d9574
Merge pull request #106996 from Ivorforce/no-oa-hashmap
...
Core: Remove `OAHashMap`, in favour of `AHashMap`
2025-06-05 13:12:34 +02:00
6b2674fe18
Reuse and optimize sorting logic for List, SelfList, and HashMap
...
Added SortList class, and updated List, SelfList, and HashMap sort methods to use it. Sorting is done with merge sort, with an initial check to optimize for already sorted lists, and sorted lists that were appended to.
2025-06-04 10:18:22 -04:00
f6f1df7d73
Add 64-bit versions of core power of 2 functions
2025-06-01 23:11:12 -07:00
963c20565b
Remove OAHashMap, in favour of AHashMap.
...
The two types had (mostly) the same decisions, but `AHashMap` is a faster implementation, and is more consistent with `HashMap`.
2025-05-31 15:50:10 +02:00
0f67c3e992
Merge pull request #104522 from Ivorforce/localvector-force-trivial-resize
...
Core: Add `resize_initialized` and `resize_uninitialized` to `Vector` and `LocalVector`
2025-05-27 09:39:27 -05:00
63dff62948
Merge pull request #100673 from RandomShaper/res_duplicate
...
Overhaul resource duplication
2025-05-27 09:39:25 -05:00
f7c182371e
Remove build_array and build_dictionary from tests
2025-05-26 13:02:01 -04:00
4cb8a0c77e
Add resize_initialized and resize_uninitialized to Vector. These functions serve as replacements for resize, to make sure the caller understands whether elements need to be initialized 'by hand' after the call.
2025-05-26 18:35:41 +02:00
6841b45552
Add tests for resource duplication
2025-05-26 17:05:04 +02:00
15de1d6c35
Use Grisu2 algorithm in String::num_scientific to fix serializing
2025-05-22 09:13:16 -07:00
d237e31a89
Style: Remove redundant DEBUG_METHODS_ENABLED
...
• Replaced with functionally identical and far more ubiquitous `DEBUG_ENABLED`
2025-05-15 13:09:41 -05:00
3bf400ffae
Move bisect to Span and deduplicate code.
...
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com >
2025-05-14 18:19:09 +08:00
0ce3d75c20
Merge pull request #93783 from aaronp64/json_stringify_performance
...
Improve `JSON::stringify` performance
2025-05-07 12:48:28 -05:00
f13b4b760a
Improve JSON::stringify performance
...
- Changed stringify to call static function _stringify directly, instead of creating JSON object
- Changed colon and end_statement from String to const char * to avoid extra allocations in each _stringify call
- Pass result String reference to each _stringify call to append to instead of allocating new String in each call
These changes make JSON::stringify around 2-3x faster in most cases
2025-05-06 18:27:32 -04:00
6d56d2d05e
Fix tests that fail when alone
2025-05-06 13:48:16 -04:00
acf38b2292
Merge pull request #76560 from aaronfranke/node-set-string-name
...
Change Node `set_name` to use StringName, slightly improves performance
2025-05-02 09:25:25 -05:00
a0cc41b5ed
Use libjpeg-turbo for improved jpg compatibility and speed
...
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com >
2025-05-02 11:47:56 +02:00
a404b668a1
Change Node set_name to use StringName
2025-05-01 15:15:19 -07:00
1b1ab76a14
Add FixedVector template.
...
This is a high performance `Vector`-like object that can be used if the maximum number of objects is small and known, and the objects are needed only temporarily.
2025-04-30 19:14:08 +02:00
3947cbe3b2
Merge pull request #104386 from Repiteo/core/cpp-math
...
Core: Replace C math headers with C++ equivalents
2025-04-27 19:21:22 -05:00
91fe434a86
Always use String as StringName backing internally.
2025-04-23 14:57:03 +02:00
ad40939b6f
Core: Replace C math headers with C++ equivalents
...
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
692a244713
Test for insertion at array's size
2025-04-15 12:08:54 -04:00
501c64a12f
Remove auto misuse cases.
2025-04-14 16:54:57 +03:00
717df3ee88
Merge pull request #105249 from Repiteo/core/math-defs-namespace
...
Core: Use `Math` namespace for constants
2025-04-11 09:51:04 -05:00
94282d88f9
Core: Use Math namespace for constants
2025-04-10 16:29:30 -05:00
bf963e767e
Add Options, Functions and Settings to convert Node-Names and Strings to kebab-case
...
- refactored and renamed String::_camelcase_to_underscore to String:_separate_compound_words
- refactored String::to_snake_case to work with the refactored String::_separate_compound_words
- created char_utils::is_hyphen to catch all hyphen variants in kebab-case conversion
- created String::to_kebab_case using the new String::_separate_compound_words
- created corresponding Documentation in String and StringName
- simplified both switch statements in EditorNode and ProjectDialog
- added new kebab-casing Option for Node Names in ProjectSettings
- added missing camelCase Options to Scene- and Node-Names in ProjectSettings
- simplified Mono RuntimeInterop Functions
- hooked up the ConnectionsDialog
- created additional Unit Tests
2025-04-10 21:22:21 +02:00
cade15a163
Merge pull request #92475 from AThousandShips/string_replace_char
...
Add `String::replace_char(s)` methods for performance and convenience
2025-04-10 10:18:16 -05:00
fc1dbda769
Merge pull request #105164 from stuartcarnie/apple_pthread
...
Apple: Add pthread implementation of `Thread` class
2025-04-10 10:18:12 -05:00
889410dcda
Add String::replace_char(s) methods for performance and convenience
2025-04-10 13:08:45 +02:00
8c8d6de3e7
Apple: Add pthread implementation of Thread class
...
This allows Apple platforms to override the default stack size of
a thread in the WorkerThreadPool, which is 512KiB by default.
This must be increased, as SPIRV-Cross, used by the Metal driver, can
use deeply nested stacks, as can debug builds.
2025-04-10 09:35:40 +10:00