Mikael Hermansson
31b90246e7
Fix empty lines being added for errors with no script backtrace
2025-05-05 13:27:21 +02:00
clayjohn
2b3923880a
Continue checking for a texture decompression path even if end of import file is not reached
2025-05-05 00:19:32 -07:00
LuoZhihao
237597b01f
BasisU: Use KTX2 format and add import options to configure encoder
2025-05-03 01:45:38 +08:00
Thaddeus Crews
01fc9aee6c
Core: Modernize C headers with C++ equivalents
2025-05-02 08:23:01 -05:00
kobewi
5af4bef46f
Inline static variables (part 1)
2025-04-29 18:10:44 +02:00
Thaddeus Crews
f8a8d6cf04
Merge pull request #105700 from dementive/config-file-get-improvement
...
Improve ConfigFile get_sections and get_section_keys by returning Vector<String>
2025-04-27 19:21:31 -05:00
Thaddeus Crews
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
dementive
b8e44a0000
Improve ConfigFile get_sections and get_section_keys by returning Vector<String>
2025-04-24 20:10:31 -04:00
Thaddeus Crews
28089c40c1
Merge pull request #91006 from reduz/live-backtrace
...
Ability to print and log script backtraces
2025-04-24 17:18:52 -05:00
reduz
d1dcb40d56
Ability to print and log script backtraces
...
Co-authored-by: Mikael Hermansson <mikael@hermansson.io>
2025-04-24 18:54:41 +02:00
RedMser
a96e8ac62c
Remove old path remaps system
...
Unused in public repositories, deprecated for over 6 years, and the
replacement system is well-tested by now.
2025-04-23 15:48:33 +02:00
Thaddeus Crews
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
Thaddeus Crews
d236bd8633
Merge pull request #99543 from KoBeWi/using_rng_to_destroy_rng
...
Add `create_id_for_path()` to ResourceUID
2025-04-11 09:51:12 -05:00
Thaddeus Crews
0964badc05
Merge pull request #105210 from nikitalita/gdsoftclass-fa-da
...
Add GDSOFTCLASS to FileAccess and DirAccess derived classes
2025-04-11 09:51:08 -05:00
kobewi
ff1f040893
Add create_id_for_path() to ResourceUID
2025-04-11 00:53:34 +02:00
Thaddeus Crews
94282d88f9
Core: Use `Math` namespace for constants
2025-04-10 16:29:30 -05:00
Thaddeus Crews
c67b9a43e3
Merge pull request #100086 from erodozer/multipart-ext-import
...
Support multi dot extensions in import plugins
2025-04-10 10:18:18 -05:00
A Thousand Ships
889410dcda
Add `String::replace_char(s)` methods for performance and convenience
2025-04-10 13:08:45 +02:00
nikitalita
2d0ae77719
add GDSOFTCLASS to FileAccess and DirAccess derived classes
2025-04-09 11:52:50 -07:00
Thaddeus Crews
ec675fc329
Merge pull request #100333 from YYF233333/reduce_list
...
Use `LocalVector` instead of `List` as arg of `Dictionary::get_key_list`
2025-04-09 08:51:45 -05:00
Thaddeus Crews
217d1c6d2f
Merge pull request #105178 from bruvzg/endianess_notes
...
Remove misleading and incorrect notes about endianness. Fix FileAccess and StreamPeer not doing what name suggests.
2025-04-09 08:51:42 -05:00
Pāvels Nadtočajevs
bd98aad3fa
Remove misleading and incorrect notes about endianness. Fix FileAccess and StreamPeer not doing what name suggests.
2025-04-09 11:01:25 +03:00
Lukas Tenbrink
fbe64ffb45
Change `get_class_static` to return `StringName`.
...
Use that static `get_class_static` for `_get_class_namev` to avoid duplication.
2025-04-08 23:25:05 +02:00
Yufeng Ying
f7e4987d0e
Dictionary::get_key_list use LocalVector instead of List.
2025-04-09 02:46:24 +08:00
Lukas Tenbrink
68f4502a5b
Fix `FileAccessCompressed` claiming one byte more than it actually has.
...
Add a unit test for fastlz compressed file access.
2025-04-08 15:19:58 +02:00
Thaddeus Crews
0fbb22c095
Merge pull request #104432 from YYF233333/dict_iter2
...
Do not iterate `Dictionary` with `Dictionary::keys()`
2025-04-07 08:43:33 -05:00
Thaddeus Crews
5edb235018
CI: Bump various pre-commit hooks
2025-04-07 08:23:35 -05:00
Yufeng Ying
8ae16699c5
Do not use Dictionary::keys() for Dictionary iteration.
2025-04-05 18:42:13 +08:00
Thaddeus Crews
207a2b6472
Core: Integrate warning suppression macro helpers
2025-04-03 10:13:46 -05:00
Yufeng Ying
4f4031a675
Replace size() == 0 with is_empty().
2025-04-02 19:18:43 +08:00
Thaddeus Crews
abd565eb19
Merge pull request #104844 from Ivorforce/gdsoftclass
...
Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`.
2025-03-31 19:02:03 -05:00
Lukas Tenbrink
fa0a3c9c6e
Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`.
2025-03-31 20:49:50 +02:00
Thaddeus Crews
64f80ca0e9
Merge pull request #104810 from kiroxas/utf8_cleanup
...
Replace `append_utfx` with direct `String::utfx`
2025-03-31 12:03:44 -05:00
Kiro
23129a66ed
Replace append_utfx with direct String::utfx
2025-03-30 19:56:38 +02:00
BlueCube3310
647b99c6d0
Image: Fix typo at `_set_color_at_ofs` with `FORMAT_RGB565`
2025-03-29 17:51:31 +01:00
Thaddeus Crews
152c14b053
Merge pull request #104597 from bruvzg/path_check
...
Implement `DirAccess.is_equivalent` method.
2025-03-29 10:16:34 -05:00
Thaddeus Crews
780cf03051
Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
...
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
BlueCube3310
dd47d9173e
Image: Improve `is_invisible` function
2025-03-28 22:42:37 +01:00
Rémi Verschelde
e3063f5675
Merge pull request #104590 from bruvzg/tex_decomp_load
...
Load decompressable texture format if no supported one is found.
2025-03-28 17:30:28 +01:00
Rémi Verschelde
3b90bb56ad
Merge pull request #89782 from KoBeWi/stdArrayList
...
Use initializer list in Arrays
2025-03-28 17:29:40 +01:00
Lukas Tenbrink
ffa6ef220b
Use `append_` instead of `parse_` for `String` methods.
2025-03-27 17:51:02 +01:00
BlueCube3310
649fa630a7
Image: Remove references to defunct `FORMAT_CUSTOM`
2025-03-26 21:37:26 +01:00
kobewi
75881f8322
Use initializer list in Arrays
2025-03-26 18:38:15 +01:00
Pāvels Nadtočajevs
d5cea9bb2e
Implement `DirAccess.is_equivalent` method.
2025-03-25 17:52:15 +02:00
Pāvels Nadtočajevs
b384de9013
Load decompressable texture format is no supported one found.
2025-03-25 09:46:19 +02:00
Thaddeus Crews
1cb3cfaa8e
Style: Convert namespaces to PascalCase
2025-03-23 19:10:24 -05:00
Thaddeus Crews
2eec0fc526
Merge pull request #94441 from Repiteo/core/math-namespace
...
Core: Convert `Math` class to namespace
2025-03-23 19:03:55 -05:00
Thaddeus Crews
fd45f42464
Merge pull request #101361 from Repiteo/core/isolate-ref-logic
...
Core: Isolate `Ref` forward declare logic
2025-03-23 19:03:54 -05:00
Thaddeus Crews
d9ef361d12
Core: Isolate `Ref` forward declare logic
2025-03-23 08:22:00 -05:00
Thaddeus Crews
f09ee0171a
Style: Begin integrating simple `.clangd` fixes
2025-03-22 13:24:35 -05:00
Thaddeus Crews
581d675eeb
Core: Convert `Math` class to namespace
2025-03-21 10:29:18 -05:00
Pāvels Nadtočajevs
abe413ff8c
Fix icons with non-ASCII file names in project manager.
2025-03-20 16:33:01 +02:00
kobewi
10f6c01b9c
Remove ABS in favor of Math::abs
2025-03-19 13:52:40 +01:00
Rémi Verschelde
2fa721b1bc
Merge pull request #104127 from Ivorforce/360-noclip
...
Remove `String` clipping constructors.
2025-03-19 12:27:10 +01:00
Rémi Verschelde
65161977e9
Merge pull request #103415 from bruvzg/iv_pools
...
Use single RNG instance for `FileAccessEncrypted` IV generation.
2025-03-19 12:26:38 +01:00
Pablo Andres Fuente
e2bef7041e
Fix `StreamPeerGZIP::finish()` internal buffer size usage
...
Fixes #97201
Instead of using and arbitrary fixed size for the internal buffer,
the remaining available bytes of the internal `RingBuffer` is used.
Also add unit tests for `StreamPeerGZIP`.
2025-03-19 09:56:32 +01:00
Thaddeus Crews
f98cddfc71
Merge pull request #101994 from fire/vsk-save-dds-4.4
...
Add DDS image load and save functionality
2025-03-17 16:03:26 -05:00
Thaddeus Crews
4320800621
Core: Expand `is_zero_constructible` coverage
2025-03-17 11:45:26 -05:00
Thaddeus Crews
82f284d9fe
Merge pull request #104187 from Ivorforce/file-access-compressed-memcpy
...
Optimize `FileAccessCompressed::get_buffer` by using `memcpy`.
2025-03-17 10:52:16 -05:00
Lukas Tenbrink
b67e213b16
Optimize `FileAccessCompressed::get_buffer` by using `memcpy`.
2025-03-16 12:22:06 +01:00
Lukas Tenbrink
b4f6663afa
Recycle `zstd` decompression context if possible, avoiding repeated allocations.
2025-03-15 15:39:18 +01:00
Lukas Tenbrink
a23f630781
Remove `String` clipping constructors.
...
Callers should instead call constructors with explicit encoding names, with known length `Span`.
2025-03-15 12:34:44 +01:00
K. S. Ernest (iFire) Lee
69b281295c
Add DDS image load and save functionality
...
Save and load DDS from Image class.
Co-authored-by: BlueCube3310 <53150244+BlueCube3310@users.noreply.github.com>
2025-03-14 19:31:43 -07:00
Lukas Tenbrink
f4de2cd22a
Use `resize_zeroed` instead of `resize` then `fill(0)` in several places.
2025-03-14 12:09:39 +01:00
Rémi Verschelde
6ed10dee37
Merge pull request #104060 from bruvzg/resloader_ids
...
Fix `Invalid Task ID` errors in `ResourceLoader`.
2025-03-14 00:08:59 +01:00
Rémi Verschelde
d912dcc26c
Merge pull request #104013 from bruvzg/rload_nowait
...
[ResourceLoader] Do not wait for the main thread during initial reimport.
2025-03-14 00:08:53 +01:00
Rémi Verschelde
e281a9ace2
Merge pull request #102650 from bruvzg/emit_changed_spam
...
Prevent `changed` signal spam on resource reload.
2025-03-14 00:07:59 +01:00
Thaddeus Crews
c1b7865ae9
Merge pull request #103557 from aaronfranke/godot-version-defines
...
Rename version defines to `GODOT_VERSION_*` to match GDExtension godot-cpp
2025-03-13 08:57:42 -05:00
Pāvels Nadtočajevs
d1b63ae16c
Fix `Invalid Task ID` errors in `ResourceLoader`.
2025-03-13 08:41:53 +02:00
Aaron Franke
97ee05e9b7
Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp
2025-03-12 11:11:38 -07:00
Yufeng Ying
bebe037abf
Add ConstIterator to Dictionary.
2025-03-13 01:28:46 +08:00
Pāvels Nadtočajevs
16865b6917
[ResourceLoader] Do not wait for the main thread during initial reimport.
2025-03-12 09:18:39 +02:00
Thaddeus Crews
e9e4760335
Merge pull request #83538 from bruvzg/size_and_at
...
[FileAccess] Implement `get_size` and `get_access_time` methods.
2025-03-11 14:00:58 -05:00
A Thousand Ships
331a43a9d8
Add `String::remove_char(s)` methods for performance and convenience
2025-03-10 13:19:28 +01:00
bruvzg
85d3be8070
[FileAccess] Implement `get_size` and `get_access_time` methods.
2025-03-09 16:07:00 +02:00
Thaddeus Crews
3a0b8da168
Merge pull request #101304 from Ivorforce/string-parse-ascii
...
Add `String::ascii` creator functions, to parse a char buffer as ASCII.
2025-03-09 09:05:28 -05:00
Thaddeus Crews
324512e11c
Style: Replace header guards with `#pragma once`
2025-03-07 17:33:47 -06:00
Lukas Tenbrink
b6cfcdeab5
Add `String::ascii` creator functions, to parse a char buffer as ASCII.
...
The function will log errors if any characters above value 127 are found.
2025-03-08 00:01:27 +01:00
Thaddeus Crews
3c43508ed7
Merge pull request #102427 from AThousandShips/fix_substr
...
Clean up some uses of `String::substr`
2025-03-07 15:12:33 -06:00
Thaddeus Crews
c937b6d180
Merge pull request #102419 from Ivorforce/std-size
...
Use `std::size` instead of `sizeof(a) / sizeof(a[0])` pattern throughout the codebase.
2025-03-07 15:12:25 -06:00
Thaddeus Crews
d9125ebebe
Merge pull request #101293 from Ivorforce/string-to-pointer-conversion
...
Remove implicit conversions from `String`, `Char16String` and `CharString` to data pointers.
2025-03-07 15:12:12 -06:00
A Thousand Ships
5113022dfe
Clean up some uses of `String::substr`
...
Cases where the end position is either equvalent to the default or past
the end of the string.
2025-03-07 14:50:38 +01:00
Pāvels Nadtočajevs
cf18cf1630
Use single RNG instance for `FileAccessEncrypted` IV generation.
2025-03-01 00:02:42 +02:00
erodozer
e48fea73e6
Support multi part extensions in import plugins
2025-02-18 13:19:05 -05:00
Jordyfel
e9703ee1aa
Improve documentation of some Resource methods
2025-02-11 21:55:20 +02:00
Pāvels Nadtočajevs
da767ebfa2
Prevent `changed` signal spam on resource reload.
2025-02-11 15:22:49 +02:00
Rémi Verschelde
62d22ffa6b
Merge pull request #98216 from pafuent/fixing_log_rotation
...
Fix file logging log rotation
2025-02-11 10:54:01 +01:00
Pablo Andres Fuente
d1338528f9
Fix file loggin log rotation
...
Fixes #97066
`RBSet` were used on `RotatedFileLogger` because it guarantees that
iterating it is done via `operator<`. This is important because
`RotatedFileLogger` depends on this behavior to delete the oldest log file.
On #61194 `HashSet` was added and all `RBSet` uses were replaced by
`HashSet`.
When that happened, the iteration in order is guaranteed to be the insertion
order, wich made that `RotatedFileLogger` delete the newest log file.
As a bonus, I added unit test for `RotatedFileLogger` and `CompositeLogger`.
2025-02-10 21:57:07 +01:00
Hilderin
9457666bba
Fix accessing UID before first scan
2025-02-08 20:04:32 -05:00
Lukas Tenbrink
e34f1f504c
Use `std::size` instead of `sizeof(a) / sizeof(a[0])` pattern throughout the codebase.
2025-02-07 14:57:48 +01:00
kobewi
65509ae4ff
Improve UID file creation condition
2025-02-06 17:08:00 +01:00
Pāvels Nadtočajevs
e6e108d091
Implement `get_length()` for pipes.
2025-02-03 16:50:00 +02:00
Tareq Anuar
9014cdb596
Fix ResourceLoader.has_cached() and ResourceLoader.get_cached_ref() not handling UIDs.
2025-01-20 20:36:23 +08:00
Lukas Tenbrink
512abc38b2
Remove implicit conversions from String, Char16String and CharString to data pointers. Make conversions to StrRange implicit to aid transition.
2025-01-17 17:31:58 +01:00
Thaddeus Crews
0c0c45d695
Merge pull request #99494 from RandomShaper/rerefix_res_unrecog
...
ResourceLoader: Report appropriate error code when no suitable loader is found
2025-01-16 17:18:03 -06:00
Thaddeus Crews
ec85334a84
Merge pull request #90425 from tracefree/load-pack-fix
...
Fix "res://" being replaced by resource packs in the editor and on Android
2025-01-16 17:18:02 -06:00
BlueCube3310
271067eb2b
Fix certain channel masks for Texture previewer
2025-01-15 18:40:53 +01:00
Rie
d17ce4c37e
Fix "res://" being replaced by resource packs in the editor and on Android
2025-01-15 11:20:46 +01:00
Rémi Verschelde
f07e3ed551
Merge pull request #100157 from Zylann/texture_preview_channel_selector
...
Add color channel filter to editor texture previews
2025-01-14 12:08:54 +01:00
Marc Gilleron
c7a9d64eaf
Add color channel filter to editor texture previews
2025-01-11 23:27:48 +00:00
David Snopek
696285f23a
Use `MethodInfo::get_compatibility_hash()` to generate the hash for `MethodBind::get_hash()` and other GDExtension hash clean up
2025-01-11 15:57:42 -06:00
Rémi Verschelde
5b52b4b5c4
Merge pull request #101446 from KoBeWi/path_ensuring_never_ends
...
Fix UID path remap
2025-01-11 22:30:25 +01:00
kobewi
9ad34ecc3e
Fix UID path remap
2025-01-11 22:15:59 +01:00
kobewi
d3d874e0d1
Improve missing UID errors
2025-01-11 21:30:25 +01:00
Yufeng Ying
34d8255947
Force build editor with regex module, remove checking code.
...
Fix include.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-07 19:43:23 +08:00
Rémi Verschelde
653f5a9613
Merge pull request #100976 from AThousandShips/uid_fixes
...
[Core] Fix UID encoding
2025-01-06 22:48:13 +01:00
Rémi Verschelde
e06cac212b
Merge pull request #99893 from kiroxas/avoidUTF8ParsingWhenNotNecessary
...
Avoid duplicated `utf8()` calls
2025-01-06 22:47:12 +01:00
Rémi Verschelde
c049d07121
VariantParser: Ensure all parse errors have an explanation
...
Likewise in ResourceFormatText and JSON.
2025-01-03 17:17:37 +01:00
Rémi Verschelde
a17a0bc808
Merge pull request #100717 from KoBeWi/icon_uncache
...
Fix icon UIDs in Project Manager
2025-01-03 02:01:24 +01:00
Thaddeus Crews
e06d83860d
Style: Enforce `AllowShortFunctionsOnASingleLine`
2025-01-02 10:09:41 -06:00
AThousandShips
25ecf5ec83
[Core] Fix UID encoding
...
Fixes edge case where `0` encoded as `uid://` instead of `uid://a`, and
fixes the size of the temporary buffer storing encoded UID strings.
2024-12-31 15:20:09 +01:00
kobewi
81b1138a7f
Fix icon UIDs in Project Manager
2024-12-26 14:54:09 +01:00
Thaddeus Crews
3c304ab7cc
Merge pull request #96076 from AThousandShips/improve_null_check_core_drivers
...
[Core,Drivers] Improve use of `Ref.is_null/valid`
2024-12-23 11:14:58 -06:00
Thaddeus Crews
bf9ef5f8a5
Merge pull request #100564 from YYF233333/iwyu
...
Remove unused headers in core
2024-12-19 19:59:55 -06:00
Kiro
06efe84bca
Remove duplicate `utf8()` calls
2024-12-19 10:15:46 +01:00
Yufeng Ying
be86ce3103
Apply iwyu suggestion in core.
2024-12-19 00:43:47 +08:00
Rémi Verschelde
851d8e49e8
Merge pull request #100386 from hpvb/core-ubsan
...
Core: Fix UBSAN reports
2024-12-18 17:23:32 +01:00
HP van Braam
240f510fa7
Core ubsan fixes
...
This fixes UBSAN errors reported by running our testsuite, importing the
TPS demo, and running the TPS demo. I have tried, wherever possible, to
fix issues related to reported issues but not directly reported by UBSAN
because thse code paths just happened to not have been exercised in
these cases.
These fixes apply only to errors reported, and caused by, core/
The following things have been changed:
* Make sure there are no implicit sign changing casts in core.
* Explicitly type enums that are part of a public API such that users of
the API cannot pass in wrongly-sized values leading to potential stack
corruption.
* Ensure that memcpy is never called with invalid or null pointers as
this is undefined behavior, and when the engine is built with
optimizations turned on leads to memory corruption and hard to debug
crashes.
* Replace enum values only used as static values with constexpr static
const values instead. This has no runtime overhead. This makes it so
that the size of the enums is explicit.
* Make sure that nan and inf is handled consistently in String.
* Implement a _to_int template to ensure that all of the paths use the
same algorhithm, and correct the negative integer case.
* Changed the way the json serializer precision work, and added tests to
verify the new behavior. The behavior doesn't quite match master in
particulary for negative doubles as the original code tried to cast -inf
to an int. This then led to negative doubles losing all but one of
their decimal points when serializing. Behavior in GDScript remains
unchanged.
2024-12-18 14:31:12 +01:00
Rémi Verschelde
d328c00ad3
Merge pull request #99667 from RandomShaper/res_load_verb
...
ResourceLoader: Print load message only when actually loading
2024-12-18 09:53:06 +01:00
Pedro J. Estébanez
6740823e40
ResourceLoader: Print load message only when actually loading
2024-12-18 09:36:16 +01:00
Thaddeus Crews
24a8c05cbd
Merge pull request #100335 from kiroxas/Improve`ResourceUID--id_to_text`Performance
...
Improve `ResourceUID::id_to_text` performance
2024-12-16 12:10:05 -06:00
Kiro
5f401e63b5
Improve `ResourceUID::id_to_text` performance
2024-12-15 10:41:13 +01:00
David Snopek
8c01fc2274
Fix `StreamPeerExtension::put_partial_data()` to call `_put_partial_data()`
2024-12-12 08:31:12 -06:00
Rémi Verschelde
1e1e862204
Merge pull request #98100 from BlueCube3310/image-cleanup-more
...
Image: More cleanup and reduced code duplication
2024-12-12 14:09:49 +01:00
BlueCube3310
335077a03f
Image: More cleanup and reduced code duplication.
2024-12-12 11:52:59 +01:00
Thaddeus Crews
8f16f864a6
Merge pull request #99765 from dalexeev/core-fix-json-from-to-native
...
Core: Fix `JSON.{from,to}_native()` issues
2024-12-10 14:15:53 -06:00
Lukas Tenbrink
b5c31ebb41
Add contains_char() for single-character 'contains' calls.
2024-12-06 20:23:35 +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
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
Kiro
83d4bde0a2
When calling code has length of string, pass it to parse_utf8
2024-12-01 08:31:22 +01:00
bruvzg
a4b17e7852
[FileAccess] Return error codes from `store_*` methods.
2024-11-29 23:22:31 +02: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
Danil Alexeev
bd1a35ce9e
Core: Fix `JSON.{from,to}_native()` issues
2024-11-29 12:43:06 +03:00
BlueCube3310
88ffe07de9
Betsy: Add BC3 and BC5 support
2024-11-27 12:27:05 +01: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
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
219b14b905
Revert "ResourceLoader: Report error if resource type unrecognized"
...
This reverts commit fe21913ee8 .
2024-11-20 16:50:30 +01: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
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
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
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
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
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
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
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
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
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
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
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
Fabio Alessandrelli
0c620b29cd
[Net] Split Unix/Windows NetSocket implementation
2024-11-10 16:13:50 +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
nikitalita
95d2909474
Fix missing resource properties being dropped on save
2024-11-05 11:53:29 -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
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
A Thousand Ships
38f9769bc6
[Core] Improve error messages with `vformat`
2024-10-30 15:55:51 +01: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
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
Haoyu Qiu
1b4f6f6bfa
DirAccessPack: Fix file_exists and dir_exists in exported projects
2024-10-24 14:26:36 +08: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
Hilderin
fbd1643176
Fix lost of gdextension on editor startup.
...
Co-authored-by: NetroScript <noreply@enostrion.com>"
2024-10-20 18:39:31 -04: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
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
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
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
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
Hilderin
21f7c8a25f
Fix slow editor load on large projects (v2)
2024-09-25 17:36:39 -04: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
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
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