Commit Graph

2388 Commits

Author SHA1 Message Date
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
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
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
5e2fd7b1d7 fix android mono export causing conflicts 2025-02-10 10:09:52 -05:00
3be46a69c4 Fix uppercase B and X parsing in the integer literals. 2025-02-05 16:02:06 +02:00
acddf31c39 Merge pull request #101489 from RandomShaper/optimize_classnames_enumeration
Optimize classnames enumeration
2025-02-04 09:03:59 -06:00
318af42020 Include more attributes in the global class names cache 2025-01-29 09:39:50 +01:00
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
73278bf35d SCons: Properly NoCache all text files 2025-01-16 16:59:12 -06:00
9d0c41a489 Style: Unify .editorconfig logic 2025-01-12 08:49:01 -06:00
a71a8c6e1e C#: Expose OKHSL properties of Color 2025-01-09 19:18:56 +08:00
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
b77aa473a1 Implement a "Recovery Mode" for recovering crashing/hanging projects during initialization 2025-01-03 10:50:15 +00:00
29bd5c06ef Merge pull request #100636 from raulsntos/dotnet/emit-signal-fix
[.NET] Fix EmitSignal with typed array parameters
2025-01-03 02:01:20 +01:00
a1846b27ea Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
63960e1ed6 [.NET] Update required .NET SDK version in error messages
Also, replaces the download URL with a shorter one since links are not clickable so I thought it'd be more convenient.
2024-12-20 21:57:38 +01:00
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
8642e970c5 C#: Add option to treat warnings as errors 2024-12-18 10:23:41 -06:00
6cba6299f9 Merge pull request #100195 from raulsntos/dotnet/upgrade-tfm
[.NET] Upgrade user project's TargetFramework to `net8.0`
2024-12-18 09:53:10 +01:00
7d30972f7c Merge pull request #99539 from RandomShaper/fix_dotnet_rl_deadlock
Avoid deadlocks in multi-threaded management of the C# script map
2024-12-18 09:53:01 +01:00
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
f1cf8ebfd6 Merge pull request #100506 from akien-mga/dotnet-8.0-fix-GodotSharp-build
.NET: Downgrade Microsoft.CodeAnalysis.CSharp to 4.8.0 for compat with SDK 8.0.1xy
2024-12-17 23:00:13 +01:00
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
4047e4b894 .NET: Downgrade Microsoft.CodeAnalysis.CSharp to 4.8.0 for compat with SDK 8.0.1xy
And for CI, set up .NET SDK 8.0.100 explicitly to test our min supported version.
2024-12-17 15:56:56 +01:00
80d11500b5 Code Editor: Add documentation tooltips 2024-12-15 10:51:33 +03:00
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
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
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
57d08dbec3 C#: Fix warnings caught by new problem-matchers
• Restore MSVC problem matcher for Linux builds
2024-12-10 14:04:35 -06:00
b4bd38444b Merge pull request #98545 from juanjp600/dotnet-generic-collections-set-typed
Fix generic arrays and dictionaries in .NET not calling `set_typed`
2024-12-09 14:33:37 -06:00
8ab27a7ccf Fix generic arrays and dictionaries not calling set_typed 2024-12-08 01:01:19 -03:00
b5c31ebb41 Add contains_char() for single-character 'contains' calls. 2024-12-06 20:23:35 +01:00
f8f5505b26 Avoid deadlocks in multi-threaded management of the C# script map 2024-12-03 07:38:14 +01:00
83d4bde0a2 When calling code has length of string, pass it to parse_utf8 2024-12-01 08:31:22 +01:00
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
03b05cf9ac Core: Fix built-in enum constant bindings 2024-11-22 14:03:21 +03:00
4e5080d805 [.NET] Preserve no-hint behavior for unmarshallable generics in dictionaries 2024-11-21 20:38:55 +01:00
ec7fd4f6f1 Merge pull request #97894 from paulloz/dotnet/export-tool-button
Implement `[ExportToolButton]`
2024-11-19 15:20:07 -06:00
4f52c2bb1f Implement [ExportToolButton] 2024-11-18 20:19:47 +01:00
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
68f638cf02 Use (r)find_char instead of (r)find for single characters 2024-11-17 10:02:18 +01:00
186f35fc9b remove duplicate read/write only property warning from ScriptPropertiesGenerator 2024-11-13 14:23:53 -08:00
0dd003d7d2 Merge pull request #98467 from zaevi/fix_csharp_stringname_leak
C#: Fix StringName leak when converting `Variant` to `Signal` / `Callable`
2024-11-12 09:27:49 -06:00
2705202ebb Merge pull request #98459 from zaevi/fix_csharp_signal_parameters
C#: Escape signal parameters
2024-11-12 09:27:43 -06:00
66fb0cd9f7 Merge pull request #89051 from Calinou/csharp-vscode-add-codium-support
Add Codium support to C# external editors
2024-11-11 14:18:34 -06:00
925b690c98 Core: Integrate Ref::instantiate where possible 2024-11-10 12:41:26 -06:00
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
363c0b5fec Merge pull request #47502 from KoBeWi/add_0
Always add decimal when converting float to string
2024-10-31 20:14:39 -05:00
0d350e7108 Set clang-format RemoveSemicolon rule to true
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
Zae
06df5275c2 C#: Fix StringName leak when converting Variant to Signal / Callable 2024-10-24 00:08:43 +08:00