summaryrefslogtreecommitdiff
path: root/core/io
AgeCommit message (Collapse)Author
2022-04-12Remove or make private `FileAccess` `close()` methods.bruvzg
2022-04-12Narrow FileAccess scope to prevent deadlocks.bruvzg
2022-04-11Make FileAccess and DirAccess classes reference counted.bruvzg
2022-04-08Merge pull request #59324 from Zylann/fix_fvec_array_binary_loadRémi Verschelde
Fix loading binary resources with float=64
2022-04-08Fix loading binary resources with float=64Marc Gilleron
- PackedVector2Array - PackedVector3Array - PackedColorArray
2022-04-06Fix some issues found by cppcheck.bruvzg
2022-04-04Zero initialize all pointer class and struct membersRémi Verschelde
This prevents the pitfall of UB when checking if they have been assigned something valid by comparing to nullptr.
2022-03-30Add PortableCompressedTexturereduz
* Resource that allows saving textures embedded in scenes or standalone. * Supports only formats that are portable: Lossy, Lossles or BasisUniversal This is something I wanted to add for a long time. I made it now because @fire requires it for importing GLTF2 files with embedded textures, but also this will allow saving Godot scenes as standalone binary files that will run in all platforms (because textures will load everywhere). This is ideal when you want to distribute individual standalone assets online in games that can be built from Godot scenes.
2022-03-28String: Remove TTR and DTR defines in non-tools buildRémi Verschelde
This ensures we don't use TTR in runtime code, as it's specifically meant to source translations for the editor.
2022-03-26Object: Remove unused category boilerplateRémi Verschelde
We might want to re-add something like this if/when we find a good use case for it and do the effort to categorize all objects in the API properly. Until then, it's better to remove that boilerplate since it's not needed. Closes #18711.
2022-03-23Increase the maximum number of concurrent DNS queries from 32 to 256Hugo Locurcio
This makes the following error message less likely to be printed when performing many concurrent HTTP requests: Condition ' resolving == IP::RESOLVER_INVALID_ID ' is true. returned: ERR_BUG
2022-03-23Fix crash when exporting projects with shared librariesHaoyu Qiu
2022-03-18Add binary MO translation file support.bruvzg
2022-03-17Unify TextServer built-in module and GDExtension code.bruvzg
2022-03-15Merge pull request #45263 from KoBeWi/😕Rémi Verschelde
2022-03-12Merge pull request #58772 from keptsecret/fix_filedialog_user_data_accessRémi Verschelde
Fix unable to change directory in user access mode
2022-03-11Convert uses of `DirAccess *` to `DirAccessRef` to prevent memleaksRémi Verschelde
`DirAccess *` needs to be deleted manually, and this is often forgotten especially when doing early returns with `ERR_FAIL_COND`. `DirAccessRef` is deleted automatically when it goes out of scope. Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-03-10Discern between virtual and abstract class bindingsreduz
* Previous "virtual" classes (which can't be instantiated) are not corretly named "abstract". * Added a new "virtual" category for classes, they can't be instantiated from the editor, but can be inherited from script and extensions. * Converted a large amount of classes from "abstract" to "virtual" where it makes sense. Most classes that make sense have been converted. Missing: * Physics servers * VideoStream * Script* classes. which will go in a separate PR due to the complexity involved.
2022-03-09fixed unable to change directory in user access modekeptsecret
2022-03-09Change some math macros to constexprkobewi
Changes `MAX`, `MIN`, `ABS`, `CLAMP` and `SIGN`.
2022-03-07Merge pull request #57930 from piiertho/bugfix/add-none-flag-to-resource-saverRémi Verschelde
2022-03-07Fix ResourceSaver::save method exposition flag parameterPierre-Thomas Meisels
enh: Add FLAG_NONE to SaverFlags in ResourceSaver to fix api inconsistency fix: flags parameter of ResourceSaver::save is now uint32_t to allow flag composition in scripts
2022-02-25Print every file exported with `PCKPacker.flush()`s verbose parameterHugo Locurcio
Previously, only one line per 100 files was printed. This also refactors the print statement to use Godot methods and make it more informative overall.
2022-02-19Merge pull request #58166 from Zylann/fix_binary_resource_with_doublesRémi Verschelde
Fix loading of binary resources with 64-bit floats
2022-02-19Merge pull request #58205 from Zylann/fix_variant_encode_with_doublesRémi Verschelde
Add missing flag when encode_variant writes math types with doubles
2022-02-18Fix decompression functions not returning errcodesRicardo Subtil
2022-02-16Add missing flag when encode_variant writes math types with doublesMarc Gilleron
2022-02-16Style: Cleanup single-line blocks, semicolons, dead codeRémi Verschelde
Remove currently unused implementation of TextureBasisU, could be re-added later on if needed and ported.
2022-02-16Fix loading of binary resources with 64-bit floatsMarc Gilleron
2022-02-14Fixed variant decoding Segmentation FaultMax
2022-02-14[ResourceUID] Use CryptoCore::RandomGenerator for IDs.Fabio Alessandrelli
2022-02-12Fix resource reuse in binary loaderreduz
* Reuse was not setting the internal index. * Supersedes #52599, without re-reading all properties.
2022-02-10Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git. Added `misc/scripts/codespell.sh` to make it easier to run it once in a while and update the skip and ignore lists.
2022-02-07ResourceImporter: Restore default append logic for new importersRémi Verschelde
This was changed in #56943 to allow adding new importers from plugins that take precedence over built-in ones, but this should be opt-in, not the default behavior. Fixes #57730.
2022-02-05Merge pull request #56943 from V-Sekai/override-importRémi Verschelde
Make add_importer and add_post_importer_plugin override existing importers.
2022-02-05Merge pull request #49775 from fire/faster-cvttRémi Verschelde
Faster CVTT by lowering default quality
2022-02-05[Net] Fix bogus FileAccessNetwork deconstructor.Fabio Alessandrelli
Now correctly erases old instances. The code will likely need overhaul anyway to be usable. It doesn't apply to editor runs, there's a bunch of inconsistencies on how to clients are handled, and I don't really understand why multiple instances are created for a single client/server.
2022-02-04Faster CVTT by reducing quality.K. S. Ernest (iFire) Lee
Make BC6 and BC7 CVTT faster while still having better quality than DXT5.
2022-02-04Cleanup and move char functions to the `char_utils.h` header.bruvzg
2022-02-03Merge pull request #57562 from AnilBK/string-add-containsRémi Verschelde
String: Add contains().
2022-02-04String: Add contains().Anilforextra
2022-02-03[Net] Non-blocking request in HTTPClientTCP.Fabio Alessandrelli
HTTPClientJavaScript already supports non-blocking requests.
2022-02-02Merge pull request #56771 from mhilbrunner/unacceptableFabio Alessandrelli
Verify custom HTTP headers, fix off by one error
2022-02-02Vectors: Use clear() and has().Anilforextra
Use clear() instead of resize(0). Use has() instead of "find(p_val) != -1".
2022-01-29[Net] Simplify IP resolution code, fix caching.Fabio Alessandrelli
First, we should not insert into cache if the hostname resolution has failed (as it might be a temporary internet issue), second, the async resolver should also properly insert into cache. Took the chance to remove some duplicate code with critical section in it at the cost of little performance when calling the blocking resolve_hostname function.
2022-01-28Merge pull request #57116 from bruvzg/win_net_shareRémi Verschelde
2022-01-27Merge pull request #57205 from TechnoPorg/variant-template-castRémi Verschelde
Allow method binds to take Object subclasses as arguments
2022-01-27Verify custom HTTP headers, fix off by one errorMax Hilbrunner
2022-01-27HTTP comment cleanupMax Hilbrunner
2022-01-25Allow method binds to take Object subclasses as argumentsTechnoPorg
This commit adds a condition to VariantCaster that casts Variants of type OBJECT to any type T, if T is derived from Object. This change enables a fair bit of code cleanup. First, the Variant implicit cast operators for Node and Control can be removed, which allows for some invalid includes to be removed. Second, helper methods in Tree whose sole purpose was to cast arguments to TreeItem * are no longer necessary. A few small changes also had to be made to other files, due to the changes cascading down all the includes.