summaryrefslogtreecommitdiffstats
path: root/core/extension
Commit message (Collapse)AuthorAgeFilesLines
* Rebrand preambles to RedotDubhghlas McLaughlin2024-10-1114-0/+28
| | | | | | | | | | | | | | | | | | | | | | Credits: Co-authored-by: Skogi <skogi.b@gmail.com> Co-authored-by: Spartan322 <Megacake1234@gmail.com> Co-authored-by: swashberry <swashdev@pm.me> Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: radenthefolf <radenthefolf@gmail.com> Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com> Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com> Co-authored-by: decryptedchaos <nixgod@gmail.com> Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com> Co-authored-by: Mister Puma <MisterPuma80@gmail.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: SingleError <isaaconeoneone@gmail.com> Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
* Rebrand Godot to RedotRandolph W. Aarseth II2024-10-112-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add Linux Editor tests workflow matrix Add Windows Editor w/ Mono workflow matrix Add Generate Glue Code job to Windows workflow Add Build GodotSharp job to Windows workflow Add godot compatibility version references Add Godot author info Add Godot version compatibility info Add Godot donor info Add Godot authors and donors to editor_about.cpp Credits: Co-authored-by: Skogi <skogi.b@gmail.com> Co-authored-by: Spartan322 <Megacake1234@gmail.com> Co-authored-by: swashberry <swashdev@pm.me> Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: radenthefolf <radenthefolf@gmail.com> Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com> Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com> Co-authored-by: decryptedchaos <nixgod@gmail.com> Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com> Co-authored-by: Mister Puma <MisterPuma80@gmail.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: SingleError <isaaconeoneone@gmail.com> Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
* Merge pull request #97119 from dsnopek/gdextension-object-instance-idRémi Verschelde2024-10-042-0/+24
|\ | | | | | | GDExtension: Allow directly getting `ObjectID` from `Variant`
| * GDExtension: Allow directly getting `ObjectID` from `Variant`David Snopek2024-09-172-0/+24
| |
* | GDExtension: Use loader to check if the library exists.Gergely Kis2024-09-294-1/+8
| |
* | Merge pull request #93311 from dsnopek/gdextension-required-virtualsRémi Verschelde2024-09-272-2/+3
|\ \ | | | | | | | | | GDExtension: Mark virtual function as `is_required` in `extension_api.json`
| * | GDExtension: Mark virtual function as `is_required` in `extension_api.json`David Snopek2024-09-112-2/+3
| | | | | | | | | | | | Co-authored-by: Jovan Gerodetti <jovan.gerodetti@titannano.de>
* | | SCons: Add unobtrusive type hints in SCons filesThaddeus Crews2024-09-251-0/+1
| |/ |/|
* | Merge pull request #95840 from raulsntos/char_metadataRémi Verschelde2024-09-122-2/+4
|\ \ | |/ |/| | | Add metadata for `char16_t` and `char32_t`
| * Add metadata for `char16_t` and `char32_t`Raul Santos2024-09-122-2/+4
| | | | | | | | | | | | | | | | We don't seem to expose any API that uses `char16_t` yet, but I added it anyway since we make the type info for it. I didn't add anything for `wchar_t` because we are not making a type info so maybe we don't have a need for it yet, it could be added in the future. To prevent breaking compatibility with the C# bindings, we ignore the `char32_t` metadata and still use `System.Int64`.
* | Merge pull request #96787 from raulsntos/gdextension/remove-get-rid-funcRémi Verschelde2024-09-113-5/+5
|\ \ | | | | | | | | | Remove `get_rid_func` from `GDExtensionClassCreationInfo4`
| * | Remove `get_rid_func` from `GDExtensionClassCreationInfo4`Raul Santos2024-09-103-5/+5
| |/
* | Merge pull request #96586 from rune-scape/fix-empty-stringname-hashRémi Verschelde2024-09-111-12/+61
|\ \ | | | | | | | | | StringName: Fix empty hash
| * | StringName: Fix empty hashrune-scape2024-09-091-12/+61
| |/ | | | | | | +Fixed compat hashes
* / Allow class names to be unicodescgm02024-09-071-1/+1
|/
* Implement typed dictionariesThaddeus Crews2024-09-043-0/+29
|
* Merge pull request #96292 from AThousandShips/null_check_ref_fixRémi Verschelde2024-09-031-1/+1
|\ | | | | | | Cleanup of raw `nullptr` checks with `Ref`
| * Cleanup of raw `nullptr` checks with `Ref`A Thousand Ships2024-08-311-1/+1
| | | | | | | | Using `is_valid/null` over checks with `nullptr` or `ERR_FAIL_NULL` etc.
* | Fix `bool` type appearing in GDExtension headerJan Haller2024-08-311-1/+1
|/
* Core: Сheck `r_error` after calling `callp()`Danil Alexeev2024-08-301-1/+1
|
* Merge pull request #93972 from ↵Rémi Verschelde2024-08-302-7/+89
|\ | | | | | | | | | | Hilderin/fix-editor-needs-restart-after-adding-gdextensions Fix editor needs restart after adding GDExtensions
| * Fix editor needs restart after adding GDExtensionsHilderin2024-08-292-7/+89
| |
* | Fix loading GDExtensions in exported gamesDavid Snopek2024-08-291-5/+3
|/
* Add `String.is_valid_unicode_identifier()`Haoyu Qiu2024-08-271-1/+1
| | | | | | | - Adds `is_valid_unicode_identifier()` - Adds `is_valid_ascii_identifier()` - Deprecates `is_valid_identifier()` - Renames `validate_identifier()` to `validate_ascii_identifier()`
* Merge pull request #91166 from raulsntos/gdextension/loaderRémi Verschelde2024-08-267-344/+577
|\ | | | | | | GDExtension: Implement `GDExtensionLoader` concept
| * GDExtension: Implement `GDExtensionLoader` conceptRaul Santos2024-08-227-344/+577
| | | | | | | | | | | | | | - Implements the concept of GDExtension loaders that can be used to customize how GDExtensions are loaded and initialized. - Moves the parsing of `.gdextension` config files to the new `GDExtensionLibraryLoader`. - `GDExtensionManager` is now meant to be the main way to load/unload extensions and can optionally take a `GDExtensionLoader`. - `EditorFileSystem` avoids unloading extensions if the file still exists, this should prevent unloading extensions that are outside the user project.
* | Allow ClassDB to create a Object without postinitialization for GDExtension.Daylily-Zeleen2024-08-204-17/+137
|/
* Fix reload of GDExtension libraries in framework package on macosJoel Croteau2024-08-081-10/+1
| | | | | | | | | | | | | | | | | | | | | `GDExtension::open_library` has a check in it to see if the library was loaded from a temp file, and if it was to restore the original name as that is the one we actually care about. This check is breaking extension reloading on Mac when the library path is to a framework folder, as the file inside the framework will not generally be the same name as the folder. This check also shouldn't be necessary even on Windows, which is the only platform that uses `generate_temp_files`, since disposal of the created temp file is handled within `OS_Windows::open_dynamic_library`, and `GDExtension::open_library` (which is the only function to call `open_dynamic_library` with a `p_data` argument) only cares about the original library file path and has to do extra work to remove the name of the temp file. Instead, I have removed that check and set `OS_Windows::open_dynamic_library` to return the name of the original file and not the name of the copy. This fixes GDExtension reloading on macOS. I do not have a Windows machine available to test that it still works properly on Windows, so someone should check that before merging this.
* Merge pull request #94373 from maiself/fix-library-path-as-absRémi Verschelde2024-07-171-1/+1
|\ | | | | | | Fix to restore `library_path` as absolute path
| * Fix to restore `library_path` as absolute pathMai Lavelle2024-07-141-1/+1
| |
* | GDExtension docs: advise bindings to use uint64_t for bitfieldsJan Haller2024-07-151-1/+5
|/
* [TextServer, GDExtension] Fix building text servers as GDExtension, expose ↵bruvzg2024-06-122-0/+87
| | | | new/changed low-level methods to GDExtension API.
* Merge pull request #91502 from lyuma/gdextension_open_library_compatRémi Verschelde2024-05-303-0/+60
|\ | | | | | | Bind compatibility GDExtension methods removed in #88418
| * Bind compatibility GDExtension methods removed in 88418Lyuma2024-05-073-0/+60
| | | | | | | | These functions were likely not used, but we must ensure they are still bound to ensure API stability.
* | Update pre-commit hooks configuration to use `ruff` instead of `black`Jakub Marcowski2024-05-212-3/+1
| |
* | GDExtension: Prevent crash during shutdown as singletons are deletedDavid Snopek2024-05-101-0/+3
| |
* | Replace `find` with `contains/has` where applicableA Thousand Ships2024-05-081-1/+1
| | | | | | | | | | | | | | * Replaces `find(...) != -1` with `contains` for `String` * Replaces `find(...) == -1` with `!contains` for `String` * Replaces `find(...) != -1` with `has` for containers * Replaces `find(...) == -1` with `!has` for containers
* | Fix various typos with codespellRémi Verschelde2024-05-071-2/+2
| | | | | | | | | | | | | | | | | | Using 2.2.7.dev217+g10c2abcf. Had to add `colour` to the ignore list as we used it as an alias/keyword for the documentation of color-related APIs. Also ignore recommendations to change `thirdparty` to either `third-party` or `third party`, which are correct but we use the former fairly consistently.
* | Reduce and prevent unnecessary random-access to `List`A Thousand Ships2024-05-042-18/+28
| | | | | | | | | | | | | | | | | | Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when accessing a single element) * Removed subscript operator, in favor of a more explicit `get` * Added conversion from `Iterator` to `ConstIterator` * Remade existing operations into other solutions when applicable
* | Add PackedVector4Array Variant typeK. S. Ernest (iFire) Lee2024-05-033-26/+77
| | | | | | | | | | Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com> Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* | GDExtension: provide `free_property_list_func` with length of arrayJan Haller2024-04-273-6/+14
|/
* Fix ptrcalls to static GDExtension methodsDavid Snopek2024-04-251-2/+2
|
* Merge pull request #90961 from Lateasusual/gdextension-hot-reloading-borkedRémi Verschelde2024-04-221-0/+2
|\ | | | | | | GDExtension: Fix missing library path breaking hot reloading
| * GDExtension: Fix missing library path breaking hot reloadingChris Clyne2024-04-201-0/+2
| |
* | Collapse the gdextension arguments into the `GDExtensionData` structFredia Huya-Kouadio2024-04-191-1/+7
| | | | | | | | This is used to reduce the number of arguments to `OS::open_dynamic_library(...)`.
* | Fix loading GDExtension dependencies on AndroidFredia Huya-Kouadio2024-04-192-4/+50
|/
* Merge pull request #87117 from DmitriySalnikov/rename_pdbRémi Verschelde2024-04-112-62/+6
|\ | | | | | | Add renaming of PDB files to avoid blocking them
| * Add renaming of PDB files to avoid blocking themDmitriySalnikov2024-04-052-62/+6
| |
* | [Core] Add iteration support to `Array`A Thousand Ships2024-04-101-14/+10
|/
* Print correct path when unable to find GDExtension librarySamuel Nicholas2024-03-261-2/+2
|