Commit Graph

781 Commits

Author SHA1 Message Date
LuoZhihao a71a8c6e1e C#: Expose OKHSL properties of Color 2025-01-09 19:18:56 +08:00
A Thousand Ships 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
Thaddeus Crews 8642e970c5 C#: Add option to treat warnings as errors 2024-12-18 10:23:41 -06:00
Rémi Verschelde 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
Rémi Verschelde 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
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
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
Juan Pablo Arce 8ab27a7ccf Fix generic arrays and dictionaries not calling set_typed 2024-12-08 01:01:19 -03:00
Pedro J. Estébanez f8f5505b26 Avoid deadlocks in multi-threaded management of the C# script map 2024-12-03 07:38:14 +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
Zae 06df5275c2 C#: Fix StringName leak when converting Variant to Signal / Callable 2024-10-24 00:08:43 +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
Juan Pablo Arce c41601fa9c Fix untyped dictionary .NET debug visualization showing keys as values 2024-10-07 16:27:42 -03:00
Rémi Verschelde 6bea41d68f Merge pull request #88363 from Delsin-Yu/master
C#: Implement proper generic type name printing for Godot Editor
2024-09-24 12:56:52 +02: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
DE-YU_H14 b5cd06b9ae C#: Implement proper generic type name printing for Godot Editor
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2024-09-23 15:32:10 +08: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
kleonc 3bfadeff25 Fix C# operator *(Transform3D, AABB) 2024-09-20 00:18:54 +02:00
Felix Bytow e9762b3eaf C# Assemblies can now be built with deprecated=no 2024-09-05 10:04:24 +02:00
Rémi Verschelde b4f268fae8 Merge pull request #91018 from Daylily-Zeleen/daylily-zeleen/optionally_postinitialization_for_extension_owner
Allow ClassDB to create a Object without postinitialization for GDExtension.
2024-08-26 10:51:17 +02:00
Rémi Verschelde 39b77ea04e Merge pull request #95790 from aaronfranke/rect-aabb-support
Simplify Rect2/AABB `get_support` function
2024-08-22 00:10:39 +02:00
Daylily-Zeleen 3d575801ce Allow ClassDB to create a Object without postinitialization for GDExtension. 2024-08-20 20:19:02 +08:00
Rémi Verschelde 73d42411f0 Merge pull request #95808 from paulloz/bugfix/dotnet-globalclass-icon-relative-paths
Fix relative paths for global class icons in C#
2024-08-20 10:02:47 +02:00
Rémi Verschelde 65c6897e55 Merge pull request #95269 from raulsntos/dotnet/determinant
C#: Expose `Transform2D.Determinant()`
2024-08-20 10:02:07 +02:00
Aaron Franke 7db24a9ad5 Simplify and fix Rect2/AABB get_support function 2024-08-19 23:55:31 -07:00
Paul Joannon 3c0eaec39f Fix relative paths for global class icons in C# 2024-08-19 18:09:58 +02:00
Rémi Verschelde 4bd33df11e Merge pull request #94766 from Z0rb14n/fix-vector3-slerp
C#: Fix Vector3 `Slerp` normalization error
2024-08-16 23:45:34 +02:00
Rémi Verschelde c98d549e65 Merge pull request #95431 from Joy-less/Fix-#10418
C#: Add `NotNullWhenAttribute` to `IsInstanceValid`
2024-08-16 14:34:30 +02:00
Rémi Verschelde c2a4942850 Bump version to 4.4-dev
Mr. Godot still didn't show up...
2024-08-15 11:39:34 +02:00
Joyless 3d43e73181 Add NotNullWhenAttribute to IsInstanceValid 2024-08-12 16:44:09 +01:00
Raul Santos 262671c644 C#: Expose Transform2D.Determinant() 2024-08-08 06:31:46 +02:00
Max beaf2b18ce Fix doc on Vector2.cs's / operator 2024-07-27 14:49:20 -07:00
Z0rb14n 0d6e9de0b9 Fix Vector3 Slerp Normalizing Zero Vectors
Ported the existing zero length check in C++ into C#.
2024-07-26 09:04:54 -07:00
Hilderin cc990efddf Fix freeze after building C# 2024-06-09 13:40:51 -04:00
Raul Santos 44d4f637a1 C#: Skip method name when checking CallError
When invoking `call`, the arguments contain the method name. This argument must be skipped; otherwise, the `error.argument` index will be off.
2024-06-05 16:53:21 +02:00
Rémi Verschelde 0cf42d6273 Merge pull request #88919 from nongvantinh/fix-88834
Revise implementation of C# `Aabb.GetSupport` to match the implementation in `core`
2024-05-21 11:22:36 +02:00
Rémi Verschelde d24403d056 Merge pull request #91763 from paulloz/dotnet/fix-stringextension-warnings
C#: Fix comparison warnings in `StringExtensions.cs`
2024-05-10 09:56:12 +02:00
Rémi Verschelde b7783a43c5 Merge pull request #91564 from paulloz/huisedenanhai-fix_csharp_method_info
CSharpScript should not own method infos of the base class
2024-05-10 09:55:47 +02:00
Paul Joannon af5f695a99 Fix comparison warnings in StringExtensions.cs 2024-05-10 09:42:58 +02:00
Paul Joannon 1d7085571e CSharpScript should not own base script signals 2024-05-09 13:46:25 +02:00
Rémi Verschelde 4b070e8031 Fix various typos with codespell
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.
2024-05-07 10:08:42 +02:00
huisedenanhai c313312ff5 CSharpScript should not own method infos of the base class 2024-05-04 18:54:37 +02:00
Rémi Verschelde 629e91acff Merge pull request #91479 from Repiteo/dotnet/sln-csproj-attributes
C#: Fix attributes for `sln`/`csproj` files
2024-05-04 11:52:29 +02:00
Rémi Verschelde 458106a73e Merge pull request #91203 from pirey0/stringcomp_fix
C#: Fix `StringExtensions.CompareTo` IndexOutOfRangeException
2024-05-04 11:52:25 +02:00
Thaddeus Crews 64f2e8b64f Dotnet: Fix attributes for sln/csproj files 2024-05-03 12:21:51 -05:00
Luca Martinelli (laptop) c02540bd66 fixed StringExtensions.CompareTo IndexOutOfRangeException
fixes #91118
marked CompareTo obsolete
dropped CompareTo [-1,1] range

Co-authored-by: Raul Santos <raulsntos@gmail.com>
2024-05-03 10:13:06 +02:00
K. S. Ernest (iFire) Lee f9b488508c Add PackedVector4Array Variant type
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-05-03 00:58:27 +02:00
A Thousand Ships 0f5e0d1637 Expose Vector* component-wise and scalar min/max to scripting 2024-05-02 13:02:40 +02:00