Commit graph

1765 commits

Author SHA1 Message Date
nikitalita
3fa73d4f5f FileAccessMemory: prevent seeking past end of file 2025-11-02 12:40:51 -08:00
Clay John
8b06cdf277
Revert "Handle NaN and Infinity in JSON stringify function" 2025-10-10 18:22:24 -07:00
Thaddeus Crews
21e5b41642
Merge pull request #108837 from aaronfranke/json-handle-nan-inf
Handle NaN and Infinity in JSON stringify function
2025-10-10 10:25:55 -05:00
Thaddeus Crews
5935a32e32
Core: Cleanup headers in core/config
- `MainLoop` now forward-declared in `OS`
2025-10-06 09:20:56 -05:00
Thaddeus Crews
d1d28c0bcf
Merge pull request #111223 from Ivorforce/remove-iterator-include
Replace `std::size` usage with `std_size` to avoid `<iterator>` include.
2025-10-06 09:06:49 -05:00
Thaddeus Crews
30a0a41982
Merge pull request #111274 from chocola-mint/include-optimization-logger
Remove `file_access.h` and `script_backtrace.h` includes from `logger.h`.
2025-10-06 09:06:32 -05:00
Thaddeus Crews
ef5ecd95d7
Merge pull request #111254 from Ivorforce/object-no-rb-rw
Remove `rw_lock.h` and `rb_map.h` includes from `object.h`.
2025-10-06 09:06:29 -05:00
Juan
faddd60c40
Add unique Node IDs to support base and instantiated scene refactorings
The main goal of this PR is to safeguard when a base or instantiated scene changes (nodes renamed, moved or readded),
that the hierarchy is still maintained and the node and its overridden properties can be preserved.

What it does:
* Implements unique node IDs.
* These IDs act as a fallback to names when saving.
* The IDs are **USED AS A FALLBACK**, so they are just an addition. It should not break any current existing scene.
* If a scene renames or moves a node, inherited or instantiated scenes will no longer lose reference to it.

Unlike the previous approach, this one is intended to be a fallback, only used if the node is not found.
This makes it safer to implement and ensure that, at worst case, we fail to find the node, but nothing breaks.
2025-10-06 12:55:38 +02:00
Lukas Tenbrink
9d44b68867 Remove rw_lock.h and rb_map.h includes from object.h. 2025-10-05 23:29:04 +02:00
chocola-mint
ead282ff13 Remove file_access.h and script_backtrace.h includes from logger.h. 2025-10-05 17:49:23 +09:00
Lukas Tenbrink
1db0a60dc0 Replace std::size usage with std_size to avoid <iterator> include. 2025-10-05 00:26:11 +02:00
Thaddeus Crews
38af23a654
Merge pull request #89409 from aaronfranke/server-folders
Move server files into their subfolders
2025-10-03 12:01:00 -05:00
Thaddeus Crews
6bfcfd1d33
Merge pull request #106039 from Ivorforce/cowdata-reserve-exact
Add `reserve_exact` to `CowData`, and change growth factor to 1.5x
2025-10-01 13:12:43 -05:00
Thaddeus Crews
f9be832eca
Merge pull request #110257 from BlueCube3310/mip-gen-all-formats
Image: Support generating mipmaps for all uncompressed formats
2025-10-01 13:12:40 -05:00
Lukas Tenbrink
c993db9688 Add reserve_exact to CowData and Vector.
Change growth factor to be an indeterministic 1.5x.
Use `reserve_exact` in `FileAccess` to reduce on binary file loading RAM usage.

# Conflicts:
#	core/templates/cowdata.h
2025-10-01 11:57:40 +02:00
Aaron Franke
3d1c9fd5de
Move server files into their subfolders 2025-09-30 19:39:39 -07:00
Thaddeus Crews
5a1bc65e06
Merge pull request #110058 from Rinnegatamante/pc_upstream
Perform per-line or per-rect blits in blit_rect.
2025-09-30 18:35:22 -05:00
Thaddeus Crews
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
Thaddeus Crews
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
Thaddeus Crews
fdf32d1b2a
Merge pull request #108577 from YYF233333/global_class_list
Simplify `ScriptServer::get_global_class_list`
2025-09-30 11:19:10 -05:00
Thaddeus Crews
f6fc2f4a08
Core: Remove skip_cr argument from String 2025-09-28 10:07:24 -05:00
Stuart Carnie
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
Thaddeus Crews
c32c2606f4
Merge pull request #110837 from wheatear-dev/add-gdsoftclass-deeper
Add `GDSOFTCLASS` to deeper inheritors of `Object`
2025-09-25 12:13:56 -05:00
A Thousand Ships
bd65cfa876
Revert "Replace many uses of is_class with derives_from."
This reverts commit 78b743cf4a.
2025-09-25 13:48:53 +02:00
Edward Moulsdale
e366471fdc Add GDSOFTCLASS to deeper inheritors of Object 2025-09-24 19:15:56 +01:00
BlueCube3310
f64ccadceb Image: Support generating mipmaps for all formats 2025-09-24 18:48:28 +02:00
Aaron Franke
a238af4d20
Use num_scientific (Grisu2) when stringifying JSON with full precision 2025-09-24 08:21:37 -07:00
Thaddeus Crews
78b743cf4a
Merge pull request #110832 from Ivorforce/is-class-to-derives-from
Replace many uses of `is_class` with `derives_from`.
2025-09-24 09:59:09 -05:00
Thaddeus Crews
3d1d4bf934
Merge pull request #110247 from BlueCube3310/image-fill-mips
Image: Make `fill` method also fill the mipmaps
2025-09-24 09:59:04 -05:00
Lukas Tenbrink
8ef4a43ada Replace many uses of is_class with derives_from. 2025-09-23 19:59:00 +02:00
Thaddeus Crews
cd3a6c88fd
Merge pull request #106200 from BlueCube3310/image-16-u16
Image: Implement 16-bit unorm and uint formats
2025-09-23 12:08:46 -05:00
BlueCube3310
666ed1b51c Image: Make fill method also fill the mipmaps 2025-09-23 14:55:04 +02:00
Thaddeus Crews
035f5d3055
Merge pull request #110763 from Ivorforce/object-derives-from
Use `AncestralClass` to speed up `Object::cast_to` when possible.
2025-09-22 13:28:45 -05:00
Thaddeus Crews
b4a99e775d
Merge pull request #109843 from Muller-Castro/fix-fileaccess-create-temp
Fix `FileAccess::create_temp()` default args error
2025-09-22 08:50:07 -05:00
Lukas Tenbrink
96619d46a1 Use AncestralClass to speed up Object::cast_to when possible. 2025-09-22 13:21:51 +02:00
Thaddeus Crews
149a4b4ca1
Merge pull request #107868 from lawnjelly/quick_ancestry4
Provide quick access to `Object` ancestry
2025-09-20 13:41:39 -05:00
Rinnegatamante
ad09677532 Perform per-line or per-rect blits in blit_rect. 2025-09-19 22:01:43 +02:00
Edward Moulsdale
c652119812 Add GDSOFTCLASS to NetSocket 2025-09-19 16:01:01 +01:00
Thaddeus Crews
9b96eaaf80
Merge pull request #107989 from Jojo-1000/docs-add-required-qualifier
Documentation: Add missing required qualifier for various classes
2025-09-19 09:17:06 -05:00
Yufeng Ying
a50fc5acd8 Change ClassDB::get_class_list and related stuff. 2025-09-16 15:00:33 +08:00
BlueCube3310
ebdf57fbf1 Optimize data flushing for FileAccessCompressed and FileAccessEncrypted 2025-09-16 00:19:19 +02:00
Aaron Franke
e90cea9250
Handle NaN and Infinity in JSON stringify function 2025-08-24 10:09:43 -07:00
Thaddeus Crews
b432e108d5
Merge pull request #109791 from Talkashie/master
Typo cleanup pass
2025-08-21 18:39:37 -05:00
Muller-Castro
be68ff8cea Fix FileAccess::create_temp() default args error 2025-08-21 20:00:55 -03:00
Thaddeus Crews
610a5bd65b
Merge pull request #109276 from bruvzg/sym_copy
Fix symlink copy in `DirAccess::copy_dir`.
2025-08-20 13:04:23 -05:00
Talkashie
bc7e68dfd1 Typos 2025-08-19 18:32:59 -05:00
MarianoGnu
5033a6af07 Never duplicate Scripts when duplicating resources recursively
This allows to duplicate PackedScenes safely
Fixes #108220
2025-08-14 10:26:48 -03:00
Dubhghlas McLaughlin
4841add19a
Fixed local_to_scene duplication of typed dictionary. 2025-08-06 17:04:35 -05:00
Pāvels Nadtočajevs
19dbfec777
Fix symlink copy in DirAccess::copy_dir. 2025-08-03 19:52:48 +03:00
BlueCube3310
638c6a5659 Fix Image format RGB565 conversion 2025-08-03 16:28:13 +02:00