Rémi Verschelde
7a0e659a80
Merge pull request #102836 from raulsntos/dotnet/export-tool-button-no-storage
...
[.NET] Disallow `[ExportToolButton]` on members thay may store the Callable
2025-02-14 22:58:25 +01:00
Raul Santos
f4094b554d
[.NET] Disallow [ExportToolButton] on members thay may store the Callable
...
Ensures the user doesn't store the Callable so the .NET assembly can be reloaded.
2025-02-14 01:09:59 +01:00
Thaddeus Crews
c90fd7f3da
Merge pull request #98066 from TCROC/fix-android-mono-export
...
Fix Android mono export with 2 or more cpu architectures fails
2025-02-10 12:21:32 -06:00
Travis Lange
5e2fd7b1d7
fix android mono export causing conflicts
2025-02-10 10:09:52 -05:00
Raul Santos
5a53ec55ec
[.NET] Add Obsolete attribute to signal trampolines and emitter functions
...
If a signal is deprecated, make sure we also add the `[Obsolete]` attribute to that signal's trampoline and emitter functions.
2025-01-24 02:18:28 +01:00
Thaddeus Crews
73278bf35d
SCons: Properly NoCache all text files
2025-01-16 16:59:12 -06: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
Raul Santos
975369fceb
[.NET] Fix EmitSignal with typed array parameters
...
Signals with typed arrays were generating EmitSignal methods with untyped array parameters.
2024-12-20 06:51:09 +01:00
Raul Santos
8d41b5a582
[.NET] Upgrade user project's TargetFramework to net8.0
...
- Upgrades the TFM for new created projects to `net8.0`.
- Implements system to upgrade TFM for existing projects to `net8.0`.
2024-12-18 02:44:32 +01:00
Rémi Verschelde
cb0d731daf
Merge pull request #100351 from raulsntos/dotnet/android-gradle-fix
...
[.NET] Fix gradle builds for multiple ABIs
2024-12-17 22:59:58 +01:00
Paul Joannon
fb8553e4d7
Move to .NET8
...
- Change TFM and LangVersion
- Better exception throwing (CA1510, CA1512, CA1513)
- Better exception utility method definition (CA1859)
- Prefer comparing `.Count` over calling `.Any()` (CA1860)
- Prefer `.AsSpan()` over `.Substring()` (CA1846)
- Add a few more `scoped`
- Use `RuntimeHelpers.GetUninitializedObject()` instead of `FormatterServices.GetUninitializedObject()`
- Use delegate instead of delegate pointer in variant generic conversions
- Enable EnforceExtendedAnalyzerRules in source generator projects
- Disable CS8981 on structs named movable in Godot.NativeInterop
2024-12-13 14:00:13 +01:00
Raul Santos
d526d523b4
[.NET] Fix gradle builds for multiple ABIs
...
Include the needed .NET jar in the Godot templates so it's always available, then we don't need to include the jar from a .NET publish which could fail when exporting to multiple architectures because it would attempt to add the same jar for each architecture.
2024-12-13 08:01:13 +01:00
RedworkDE
f0b6b24d9e
C#: Update to net7.0
...
Because of ref safety changes in the languages, all methods that return an interop struct have to have all other reference parameters marked as scoped to signal the the method does not capture that reference.
The variant change is necessary, because for some reason a type of the exact shape godot_variant is in, crashes the .NET 7 JIT, but when changing it to be sequential with the same effective layout it works.
2024-12-12 17:42:39 +01:00
Thaddeus Crews
57d08dbec3
C#: Fix warnings caught by new problem-matchers
...
• Restore MSVC problem matcher for Linux builds
2024-12-10 14:04:35 -06:00
Lukas Tenbrink
b5c31ebb41
Add contains_char() for single-character 'contains' calls.
2024-12-06 20:23:35 +01:00
Thaddeus Crews
ea3154a0d4
Merge pull request #99424 from dalexeev/core-fix-builtin-enum-const-binds
...
Core: Fix built-in enum constant bindings
2024-11-22 14:54:31 -06:00
Danil Alexeev
03b05cf9ac
Core: Fix built-in enum constant bindings
2024-11-22 14:03:21 +03:00
Raul Santos
4e5080d805
[.NET] Preserve no-hint behavior for unmarshallable generics in dictionaries
2024-11-21 20:38:55 +01:00
Thaddeus Crews
ec7fd4f6f1
Merge pull request #97894 from paulloz/dotnet/export-tool-button
...
Implement `[ExportToolButton]`
2024-11-19 15:20:07 -06:00
Paul Joannon
4f52c2bb1f
Implement [ExportToolButton]
2024-11-18 20:19:47 +01:00
Thaddeus Crews
1889d2a264
Merge pull request #99206 from a-johnston/fix_double_diagnostic
...
Remove duplicate read/write-only property warning from ScriptPropertiesGenerator
2024-11-18 09:23:30 -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
Adam Johnston
186f35fc9b
remove duplicate read/write only property warning from ScriptPropertiesGenerator
2024-11-13 14:23:53 -08:00
Thaddeus Crews
2705202ebb
Merge pull request #98459 from zaevi/fix_csharp_signal_parameters
...
C#: Escape signal parameters
2024-11-12 09:27:43 -06:00
Hugo Locurcio
9f2bd57b7b
Add Codium support to C# external editors
...
Selecting the VS Code option will now work if Codium is installed,
picking it as the last option after attempting to run VS Code.
2024-11-02 00:00:41 +01:00
Zae
2a3d400dd8
C#: Escape signal parameters
2024-10-23 23:24:00 +08:00
kobewi
5c0f2414cd
Always add decimal when printing float
2024-10-23 15:00:21 +02:00
Thaddeus Crews
cb3c01a5fe
Merge pull request #97588 from TML233/generated-raise-signal
...
[C#] Change generated On{SignalName} to EmitSignal{SignalName}
2024-10-21 16:39:12 -05:00
Juan Pablo Arce
e3790de461
Fix exported typed dictionaries in .NET having an incorrect hint, which led to incorrect scene serialization
2024-10-18 00:55:24 -03:00
Thaddeus Crews
c409546cc3
Merge pull request #98059 from zaevi/fix_csharp_unhandled_GD0303
...
[.NET] Fix unhandled GD0303 error for nested generic attribute types
2024-10-14 14:09:51 -05:00
Zae
9c99e519c6
C#: Fix unhandled GD0303 error for nested generic attribute types
2024-10-11 03:03:05 +08:00
DE YU
d4695e84a4
Add ReadOnlySpan API Overloads
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-10-09 23:14:38 +08:00
TML
fa48ed9945
Change generated On{SignalName} to EmitSignal{SignalName}
2024-09-28 22:10:33 +08:00
Rémi Verschelde
543fa16b4c
Merge pull request #68233 from raulsntos/dotnet/raise-events
...
C#: Generate strongly-typed method to raise signal events and fix event accessibility
2024-09-27 13:53:11 +02:00
Raul Santos
da37998dc8
C#: Generate On{EventName} method to raise signal events
2024-09-26 20:10:53 +02:00
Thaddeus Crews
9f9ee0c813
SCons: Add unobtrusive type hints in SCons files
2024-09-25 09:34:35 -05:00
Rémi Verschelde
ea8d20d35b
Merge pull request #96955 from Delsin-Yu/generator-based-CreateManagedForGodotObjectBinding
...
[.NET] Replace Reflection-Based implementation with Generated one in `CreateManagedForGodotObjectBinding`
2024-09-23 16:13:49 +02:00
Rémi Verschelde
c65ab71230
Merge pull request #94953 from raulsntos/dotnet/signals-with-typed-arrays
...
C#: Generate signal delegates with typed arrays
2024-09-23 12:27:45 +02:00
Raul Santos
445e822bcf
C#: Generate signal event with the same accessibility as the delegate
2024-09-23 03:38:18 +02:00
DE YU
307224927c
Replace Reflection-Based implementation with Generated one
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-09-22 18:01:14 +08:00
Rémi Verschelde
2f078e501c
Merge pull request #97198 from raulsntos/dotnet/open-visual-studio-with-dotnet-cli
...
C#: Use dotnet CLI to launch `OpenVisualStudio.dll`
2024-09-20 16:06:46 +02:00
Matt Enad
d6c0a53ecf
Add error messages to binding generator
2024-09-19 13:31:05 -04:00
Raul Santos
ec189b1574
C#: Use dotnet CLI to launch OpenVisualStudio.dll
...
Use the DLL instead of the EXE, so we can rely on the dotnet CLI handling the architecture.
2024-09-19 19:23:01 +02:00
Raul Santos
0aa46e19c5
C#: Fallback to CoreCLR/MonoVM hosting APIs when hostfxr/NativeAOT fails
...
Some platforms don't support hostfxr but we can use the coreclr/monosgen library directly to initialize the runtime.
Android exports now use the `android` runtime identifier instead of `linux-bionic`, this removes the restrictions we previously had:
- Adds support for all Android architectures (arm32, arm64, x32, and x64), previously only the 64-bit architectures were supported.
- Loads `System.Security.Cryptography.Native.Android` (the .NET library that binds to the Android OS crypto functions).
2024-09-16 17:07:03 +02:00
Rémi Verschelde
f8fbb860f5
Merge pull request #95840 from raulsntos/char_metadata
...
Add metadata for `char16_t` and `char32_t`
2024-09-12 09:25:19 +02:00
Raul Santos
aaffab8afb
Add metadata for char16_t and char32_t
...
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`.
2024-09-12 02:15:55 +02:00
kit
5e1c9d68aa
Extract editor main screen
2024-09-09 11:06:18 -04:00
Thaddeus Crews
9853a69144
Implement typed dictionaries
2024-09-04 10:27:26 -05:00
Raul Santos
4c14421602
C#: Use export platform to determine the target OS and log errors
...
- Use the export platform's `get_os_name` to determine the platform name instead of guessing from the features.
- Use the export platform's `add_message` to add error messages instead of a custom error dialog. Integrates .NET error messages with the export log dialog.
2024-08-30 12:45:24 +02:00
RedOrbweaver
81799b8fa3
Fix build logger unable to handle an event without an associated file
2024-08-29 20:33:47 +02:00