599a956f6f
Merge pull request #106177 from eyalzus12/feature/stackalloc-Projection
...
C#: Use `stackalloc` to create the pivot arrays in `Projection.Inverse`
2025-05-13 01:05:00 +02:00
b44aa1ad9d
Merge pull request #105104 from Joy-less/use-frozen-dictionary
...
Use `FrozenDictionary` for `NamedColors`
2025-05-13 01:04:39 +02:00
2ebfeef4a8
C#: use stackalloc to create the pivot arrays in Projection.Inverse
2025-05-08 18:27:32 +03:00
01056f369a
[.NET] Avoid heap allocation when using StringNames as key in a Collection.Dictionary.
...
Changed StringName GetHashCode to call godot_string_name.GetHashCode instead of godot_string_name's (which was not overridden) as this otherwise leads to heap allocations when e.g. calling the indexer in a Dictionary with `StringName` type as Key.
2025-05-08 08:41:22 +02:00
561dc6ced6
Merge pull request #104689 from Delsin-Yu/csharp-getset-alloc-perf
...
[.Net] Avoid unnecessary StringName allocations on not implemented virtual _Get and _Set method call
2025-04-14 19:39:53 -05:00
f0ec392bb1
[.Net] Avoid StringName allocations if type does not defines _Get or _Set
2025-04-12 03:39:24 +08:00
e8311840e4
[.NET] Fix string.PathJoin to be consistent with core
2025-04-11 23:21:29 +08:00
bf963e767e
Add Options, Functions and Settings to convert Node-Names and Strings to kebab-case
...
- refactored and renamed String::_camelcase_to_underscore to String:_separate_compound_words
- refactored String::to_snake_case to work with the refactored String::_separate_compound_words
- created char_utils::is_hyphen to catch all hyphen variants in kebab-case conversion
- created String::to_kebab_case using the new String::_separate_compound_words
- created corresponding Documentation in String and StringName
- simplified both switch statements in EditorNode and ProjectDialog
- added new kebab-casing Option for Node Names in ProjectSettings
- added missing camelCase Options to Scene- and Node-Names in ProjectSettings
- simplified Mono RuntimeInterop Functions
- hooked up the ConnectionsDialog
- created additional Unit Tests
2025-04-10 21:22:21 +02:00
f7f6e5ee21
Use FrozenDictionary
2025-04-06 20:13:02 +01:00
af67fb1f62
Avoid array allocation when signal have 0 arg
2025-04-06 16:02:35 +08:00
780cf03051
Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
...
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
ffa6ef220b
Use append_ instead of parse_ for String methods.
2025-03-27 17:51:02 +01:00
6a56ed8926
Fix nested GodotObject class in generic class lead to source generator errors in C#
2025-03-22 20:46:52 +08:00
ced61da848
Add missing Projection constructor with 16 real_t values
2025-03-14 02:57:19 -07:00
4af4b66d1b
Merge pull request #102765 from Delsin-Yu/csharp-typed-collections-documentation-improvments
...
[C#] Improve Documentation for Typed `Godot.Collections` Wrappers
2025-03-10 21:05:52 -05:00
30bb49ec1f
Merge pull request #102356 from a-johnston/add_missing_cs_vector_methods
...
Add `Min(float)` and octahedron encode/decode to `Vector3.cs`
2025-03-10 10:01:20 -05:00
324512e11c
Style: Replace header guards with #pragma once
2025-03-07 17:33:47 -06:00
a414fed4c5
Merge pull request #98034 from raulsntos/dotnet/variant-object-id
...
[.NET] Use `ObjectID` when converting `Variant` to `GodotObject`
2025-03-04 01:00:16 +01:00
1c35a31b9e
Bump version to 4.5-dev
...
Mr. Godot told me to tell you he won't come this evening but surely tomorrow.
2025-03-03 17:27:40 +01:00
288e3e3af2
Improve documentation for C# typed collection wrappers
2025-02-14 08:19:58 +08: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
3be46a69c4
Fix uppercase B and X parsing in the integer literals.
2025-02-05 16:02:06 +02:00
14f7e6ff60
Add Min(float) and octahedron encode/decode to Vector3.cs
2025-02-04 14:21:25 -08:00
318af42020
Include more attributes in the global class names cache
2025-01-29 09:39:50 +01:00
a71a8c6e1e
C#: Expose OKHSL properties of Color
2025-01-09 19:18:56 +08: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
8642e970c5
C#: Add option to treat warnings as errors
2024-12-18 10:23:41 -06: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
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
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
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
8ab27a7ccf
Fix generic arrays and dictionaries not calling set_typed
2024-12-08 01:01:19 -03:00
f8f5505b26
Avoid deadlocks in multi-threaded management of the C# script map
2024-12-03 07:38:14 +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
06df5275c2
C#: Fix StringName leak when converting Variant to Signal / Callable
2024-10-24 00:08:43 +08:00
bfcc389e21
[.NET] Use ObjectID when converting Variant to GodotObject
2024-10-09 21:19:53 +02:00
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
c41601fa9c
Fix untyped dictionary .NET debug visualization showing keys as values
2024-10-07 16:27:42 -03:00
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
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
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
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
3bfadeff25
Fix C# operator *(Transform3D, AABB)
2024-09-20 00:18:54 +02:00
e9762b3eaf
C# Assemblies can now be built with deprecated=no
2024-09-05 10:04:24 +02:00
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
39b77ea04e
Merge pull request #95790 from aaronfranke/rect-aabb-support
...
Simplify Rect2/AABB `get_support` function
2024-08-22 00:10:39 +02:00
3d575801ce
Allow ClassDB to create a Object without postinitialization for GDExtension.
2024-08-20 20:19:02 +08:00
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