Yuri Sizov
ef79e5d9dd
Merge pull request #82983 from Repiteo/c#-godotsharp-nullable-classes
...
[C#] Enable nullability for variant classes
2023-12-19 20:32:30 +01:00
Yuri Sizov
c8d0325a93
Merge pull request #82955 from paulloz/testing-source-generators
...
Add unit tests for C# source generators
2023-12-19 20:32:26 +01:00
msreis
f1cc14d525
Fix missing time for some script functions in profiler
...
Fixes the issue by adding a mechanism by which the functions that were
previously disappearing can be profiled too. This is optional with
an editor setting, since collecting more information naturally slows the engine
further while profiling.
Fixes #23715 , #40251 , #29049
2023-12-19 19:42:21 +01:00
Paul Joannon
b352bdc8cb
Add tests for source generators
...
- Bootstrap xUnit project to test source generators
- Implement source generator tests
- Better tests structure (put test data in cs files)
- Enable `ScriptSerializationGeneratorTests`
- Enable `ScriptPathAttributeGeneratorTests`
- Fix `NesterClass` -> `NestedClass`
- Use `Path.Combine` when dealing with paths
- Copy test data to the output directory
2023-12-19 18:26:52 +01:00
Yuri Sizov
f478a599fc
Merge pull request #85975 from Repiteo/c#-null-ptr-exception
...
C#: Implement function to throw on null pointers
2023-12-19 13:02:24 +01:00
Thaddeus Crews
a0db88335a
Implement function to throw on null pointers
...
• Specifically: checks if ptr == IntPtr.Zero
2023-12-17 08:52:20 -06:00
Thaddeus Crews
08e44123cb
[C#] Enable nullability for variant classes
2023-12-09 12:42:10 -06:00
Thaddeus Crews
db7a643e1c
[C#] Enable nullability for variant structs
2023-12-09 12:41:53 -06:00
Rémi Verschelde
d76c1d0e51
Bump version to 4.3-dev
...
The essential doesn't change.
-- Samuel Beckett, Waiting for Godot
2023-11-29 23:00:27 +01:00
Ivan Shakhov
7f63f4a6bf
bump the PackageReference "JetBrains.Rider.PathLocator" to 1.0.8
2023-11-28 11:13:30 +01:00
bruvzg
a92511fec3
[iOS] Fix dotnet export.
2023-11-16 15:05:44 +02:00
Raul Santos
a351c4bbe3
C#: Use get_instance_binding
instead of set
2023-11-15 21:06:13 +01:00
Raul Santos
3936871077
C#: Fail callp
silently if script is not valid
2023-11-14 16:56:16 +01:00
Rémi Verschelde
313bffc205
Merge pull request #83357 from raulsntos/dotnet/ConvertCallableToNative(default)
...
C#: Fix converting default Callables to native
2023-11-10 21:55:22 +01:00
A Thousand Ships
668761fa8e
Rename Vector2/3/4I.Min/Max
to MinValue/MaxValue
...
More consistent with the `Mathf` constants they reference
2023-11-09 14:16:53 +01:00
Rémi Verschelde
26f1c503ec
Merge pull request #84617 from YuriSizov/editor-this-one-is-for-all-my-subs
...
Fix node names of submenu items across the editor
2023-11-09 11:47:24 +01:00
Rémi Verschelde
ce53362f98
Merge pull request #83670 from raulsntos/notification-predelete-cleanup
...
Add `NOTIFICATION_PREDELETE_CLEANUP` notification to fix C# `Dispose()`
2023-11-09 11:45:49 +01:00
Yuri Sizov
b04b546092
Fix node names of submenu items across the editor
...
Also removes some programmer remarks and fixes some docs.
2023-11-08 14:42:42 +01:00
Rémi Verschelde
6afd320984
Merge pull request #78157 from RedworkDE/net-shutting-down-abruptly
...
C#: Fix crash with `DisposablesTracker_OnGodotShuttingDown`
2023-10-31 20:52:27 +01:00
Rémi Verschelde
67941551ca
Merge pull request #83809 from raulsntos/dotnet/free-dialogs
...
C#: Free dialogs when exiting the editor
2023-10-30 16:26:15 +01:00
Rémi Verschelde
bf41c6bd34
Merge pull request #82918 from raulsntos/dotnet/only-node-can-export-node
...
C#: Report diagnostic for Node exports in a type that doesn't derive from Node
2023-10-27 11:36:33 +02:00
Rémi Verschelde
398b254f27
Merge pull request #83325 from raulsntos/dotnet/find-latest-sdk
...
C#: Fallback to the latest SDK
2023-10-24 10:54:04 +02:00
Theraot
8777c05817
Expanded documentation for vector slide and project
2023-10-23 06:16:07 -05:00
Raul Santos
48edcc3b34
C#: Free dialogs when exiting the editor
2023-10-23 02:10:06 +02:00
Raul Santos
9750e49c57
Add NOTIFICATION_PREDELETE_CLEANUP
notification
...
New notification sent after `NOTIFICATION_PREDELETE` to let Objects cleanup at the very end, it should be the last notification sent.
2023-10-20 13:43:42 +02:00
Rémi Verschelde
49f492d54b
Merge pull request #83532 from raulsntos/dotnet/nested-class-generation
...
C#: Fix generated nested class order
2023-10-18 16:54:58 +02:00
Raul Santos
fe078219fc
C#: Fix generated nested class order
2023-10-18 03:37:57 +02:00
Raul Santos
e6ebde8408
Fix C# docs to use the proper XML
...
Replaces some BBCode that was accidentally left in the C# documentation
with the proper XML syntax.
2023-10-18 01:56:25 +02:00
Rémi Verschelde
dce1aab174
Merge pull request #83514 from kleonc/docs-multiplication-operators-doing-xform_inv-csharp
...
Clarify C# docs for operators performing `xform_inv`
2023-10-18 00:06:02 +02:00
Rémi Verschelde
ca09afd530
Merge pull request #80489 from raulsntos/dotnet/diagnostics
...
C#: Improve diagnostic messages and add help link
2023-10-17 23:59:17 +02:00
kleonc
408de3b091
Clarify C# docs for operators performing xform_inv
2023-10-17 19:49:42 +02:00
Raul Santos
aa4dba5b56
C#: Improve diagnostic messages and add help link
...
- Reword diagnostic messages.
- Add help link to diagnostics.
2023-10-17 19:45:09 +02:00
Thaddeus Crews
0935a99bf9
C# - bindings generator langword check
2023-10-17 08:51:24 -05:00
Raul Santos
be1dfd3b3a
C#: Allow exporting games without C#
...
When exporting a game that contains a C# solution, a feature is added so the exported game can check if it should initialize the .NET module. Otherwise, the module initialization is skipped so games without C# won't check for the assemblies and won't show alerts when they're missing.
2023-10-16 05:07:11 +02:00
Raul Santos
d525a45e5c
C#: Fix converting default Callables to native
2023-10-15 02:02:58 +02:00
Raul Santos
a186343abd
C#: Fallback to the latest SDK
2023-10-14 14:21:48 +02:00
Zae
55f74d99f4
C#: Fix lookup for singleton instance types.
2023-10-13 16:40:46 +08:00
Jakub Marcowski
cb954c6bab
Implement Vector2i/3i/4i
methods: distance_to
and distance_squared_to
2023-10-12 13:46:49 +02:00
Raul Santos
cea77d0b48
C#: Add checks to Android export
...
- Add .NET 7.0 TFM when the platform is Anroid to the created csproj.
- Prevent exporting to Android when the architecture is not supported.
2023-10-10 00:35:08 +02:00
Rémi Verschelde
9694f1d48c
Merge pull request #83051 from Repiteo/c#-untyped-to-typed-argumentnullexception
...
C#: Untyped to typed `ArgumentNullException`
2023-10-09 23:24:52 +02:00
Rémi Verschelde
4a5801b44a
Merge pull request #82729 from shana/shana/ios-csharp
...
Add C# iOS support
2023-10-09 23:23:11 +02:00
Rémi Verschelde
71a8ac41fb
Merge pull request #72751 from dalexeev/doc-comment-color
...
Highlight doc comments in a different color
2023-10-09 23:21:54 +02:00
Andreia Gaita
ee9a735c26
Add C# iOS support
...
This support is experimental and requires .NET 8
Known issues:
- Requires macOS due to use of lipo and xcodebuild
- arm64 simulator templates are not currently included
in the official packaging
2023-10-09 18:22:56 +02:00
Thaddeus Crews
d0cd726310
C#: untyped to typed handle null exception
...
• Add some missing exception/return documentation
2023-10-09 09:53:21 -05:00
Rémi Verschelde
a1d7c62df7
Merge pull request #83003 from AThousandShips/null_check_extra
...
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-09 15:37:14 +02:00
Danil Alexeev
de7cbe8789
Highlight doc comments in a different color
2023-10-08 19:26:10 +03:00
A Thousand Ships
f18aa00e85
Replace ERR_FAIL_COND
with ERR_FAIL_NULL
where applicable
2023-10-08 17:23:33 +02:00
Thaddeus Crews
d5d5af653e
C# - Fix inheritdoc links in Compat.cs
2023-10-08 09:14:28 -05:00
Raul Santos
bfe1a93023
C#: Report diagnostic for Node exports in a type that doesn't derive from Node
2023-10-06 19:03:18 +02:00
clayjohn
51ed3aef63
Vertex and attribute compression to reduce the size of the vertex format.
...
This allows Godot to automatically compress meshes to save a lot of bandwidth.
In general, this requires no interaction from the user and should result in
no noticable quality loss.
This scheme is not backwards compatible, so we have provided an upgrade
mechanism, and a mesh versioning mechanism.
Existing meshes can still be used as a result, but users can get a
performance boost by reimporting assets.
2023-10-05 12:02:23 -06:00
Rémi Verschelde
46b8f4a859
Merge pull request #82740 from raulsntos/dotnet/compat4.2
...
Add C# compat members for 4.2 changes
2023-10-04 15:44:05 +02:00
Rémi Verschelde
1e544505be
Merge pull request #82691 from YuriSizov/rst-validate-with-exceptions
...
Validate `code` tags for class and member references
2023-10-04 15:42:42 +02:00
Raul Santos
1dbecc3ff1
Add C# compat members for 4.2 changes
2023-10-03 19:34:39 +02:00
Yuri Sizov
cc0eebd9d8
Validate code
tags for class and member references
...
This commit also adds means to manually disable warnings
in `code` tags where it's a false positive with the new
`skip-lint` attribute.
Warnings are now enabled on CI to prevent future errors.
2023-10-03 15:48:31 +02:00
Raul Santos
404fd0b2dc
Fix C# editor dialogs
...
- Use `EditorInterface` to open C# editor dialogs.
- Ensure C# editor dialogs are open after `EditorProgress` finishes.
2023-10-02 17:50:33 +02:00
Rémi Verschelde
6bebd9c961
Merge pull request #82664 from hackerzhuli/master
...
Fixed an error in `Vector3.BezierDerivative` in mono module
2023-10-02 13:17:02 +02:00
Rémi Verschelde
e95b7e84a4
Merge pull request #80844 from dalexeev/fix-callable-expected-argc
...
Fix expected argument count for `Callable` call errors
2023-10-02 13:15:53 +02:00
朱力
bceba81b54
Fixed an error in Vector3.BezierDerivative in mono module
2023-10-02 15:00:05 +08:00
etti
3a39de4e2f
Add rotate_toward and angle_difference to GDScript and C#
2023-10-01 22:19:42 +02:00
Danil Alexeev
aff767ef07
Fix expected argument count for Callable
call errors
2023-09-29 20:00:10 +03:00
Rémi Verschelde
c7a5a284d3
Merge pull request #80260 from raulsntos/dotnet/msbuild-panel
...
C#: Redesign MSBuild panel
2023-09-27 09:20:19 +02:00
Raul Santos
f19694a8d6
C#: Redesign MSBuild panel
...
- Redesign panel to look closer to the look of other Godot panels such as Output and Debugger.
- Moved list of problems and output log to separate tabs instead of using a HSplit.
- Added Tree/List layouts to the problems tab.
- Added search box to filter problems tab.
- Added `FileTree` icon, made from `FileList`. Both are used for the button that toggles the Tree/List layouts.
2023-09-27 02:53:27 +02:00
A Thousand Ships
517e9f8aef
[Modules] Replace ERR_FAIL_COND
with ERR_FAIL_NULL
where applicable
2023-09-26 16:44:52 +02:00
Rémi Verschelde
4410b0b0e1
Merge pull request #67304 from wscalf/master
...
Allow readonly and writeonly C# properties to be accessed from GDScript
2023-09-26 16:36:33 +02:00
Raul Santos
f60cff1cb2
C#: Remove compat method that is now generated
2023-09-26 16:12:10 +02:00
Rémi Verschelde
42011d8673
Merge pull request #82240 from jaros3/vector2i-gethashcode
...
[C#] Use `HashCode.Combine()` for basic composite types instead of xor
2023-09-26 13:45:18 +02:00
Rémi Verschelde
017541bcec
Merge pull request #80527 from raulsntos/dotnet/generate-compat-methods-from-classdb
...
C#: Generate and use compat methods
2023-09-26 13:44:52 +02:00
bruvzg
bc6585a5a7
[RTL] Add support for image dynamic updating, padding, tooltips and size in percent.
2023-09-26 09:39:51 +03:00
Rémi Verschelde
d759f91f8d
Merge pull request #81101 from 398utubzyt/dotnet/abstract-class-support
...
C#: Add abstract class support
2023-09-25 17:18:05 +02:00
Rémi Verschelde
1a0e653d7f
Merge pull request #78573 from dalexeev/editor-create-script-class-name
...
Editor: Remove unused Class Name field from Create Script dialog
2023-09-25 17:17:46 +02:00
Jaroslav Wegner
f1bab5fa51
[C#] Use HashCode.Combine()
for basic composite types instead of xor
2023-09-25 13:56:23 +03:00
Rémi Verschelde
d65d379d22
Merge pull request #81802 from Nomad1/vs2022_mac_fix
...
Fixed VS 2022 Mac compatibility
2023-09-22 22:04:46 +02:00
Nomad1
a119365d4e
Fixed VS 2022 Mac compatibility
...
Visual Studio 2022 on Mac marks the project as invalid if the project Guid is set. Easiest way to fix it is to remove outdated 'EnableGodotProjectTypeGuid' and other Guid references
2023-09-21 15:30:10 -02:30
Rémi Verschelde
5fd8506e19
Merge pull request #81847 from crazyStewie/dotnet_editor_project_fix
...
Implemented {project} placeholder for external dotnet editor
2023-09-20 18:55:13 +02:00
Rémi Verschelde
ce0fa4c691
Merge pull request #81783 from zaevi/fix-csharp-static-method
...
C#: make C# static methods accessible.
2023-09-20 18:55:10 +02:00
Zae
67e1373e5a
C#: make C# static methods accessible.
2023-09-20 22:49:33 +08:00
crazyStewie
c01a47867b
Implemented {project} placeholder for external dotnet editor
...
Implements the {project} placeholder, available when setting an external editor
in the project settings, via Editor > Editor Settings > Text Editor > External
for the c# external editor, under Editor > Editor Settings > Dotnet > Editor,
This allows passing the project folder as a command line argument when using a
custom external editor that isn't one of the available options.
Fixes #81845
2023-09-20 10:20:45 -03:00
Raul Santos
5f6082a96b
C#: Generate and use compat methods
...
- Implements `ClassDB::get_method_list_with_compatibility` to retrieve all methods from a class including compat methods.
- C# bindings generator now also generates compat methods.
- All generated C# methods now use `ClassDB::get_method_with_compatibility`.
2023-09-19 20:35:11 +02:00
Thaddeus Crews
657d81e056
C#: CS1591 from none
to suggestion
2023-09-19 13:12:06 -05:00
Rémi Verschelde
c78d0e2eb0
Merge pull request #81819 from Chaosus/cs_max_min_vectors
...
Add Vector2/3/4i.MAX and MIN (C#)
2023-09-19 09:04:05 +02:00
Rémi Verschelde
793c382fa7
Merge pull request #81703 from Repiteo/c#-binding-warnings-to-editorconfig
...
C# - `bindings_generator` warnings to `.editorconfig`
2023-09-18 10:38:12 +02:00
Yuri Roubinski
cf3008cb05
Add Vector2/3/4i.MAX and MIN (C#)
2023-09-17 22:12:59 +03:00
Rémi Verschelde
c63e0aefcf
Merge pull request #79366 from dalexeev/gds-signal-info-and-callback
...
Editor: Improve signal callback generation
2023-09-17 14:45:47 +02:00
Thaddeus Crews
e43b63ab98
C# - bindings_generator warnings to .editorconfig
2023-09-16 11:55:04 -05:00
398utubzyt
2df37a237a
C#: Abstract script class support
2023-09-15 20:35:25 -07:00
Yuri Sizov
5f1e56ff26
Merge pull request #81690 from raulsntos/dotnet/hide-hostfxr-error
...
C#: Hide hostfxr not found error
2023-09-15 19:48:48 +02:00
Yuri Sizov
df6cd37a69
Merge pull request #81516 from YuriSizov/editor-theme-access-the-success
...
Fix accessing editor theme items throughout the UI
2023-09-15 19:48:14 +02:00
Yuri Sizov
8ecc0c4f47
Fix accessing editor theme items throughout the UI
...
This also exposes `EditorInterface::get_editor_theme`.
2023-09-15 14:51:01 +02:00
Raul Santos
394c0eb225
C#: Hide hostfxr not found error
...
Godot tries to find hostfxr in two locations, the method that tries
to retrieve the location printed an error when it was not found.
So when the first location fails it was printing an error, even if
the second location succeeded, and users were left confused thinking
there was something wrong with their installation.
Now the error will only be printed when stdout verbose is enabled.
Users will still get an error later if hostfxr is not found in any
of the two locations.
2023-09-15 14:12:01 +02:00
Raul Santos
5f6524ad44
C#: Check if JetBrains Rider editor path is empty
2023-09-14 01:55:51 +02:00
Danil Alexeev
26ce861910
Editor: Remove unused Class Name field from Create Script dialog
2023-09-12 12:49:56 +03:00
Danil Alexeev
4b5daf06ef
Editor: Improve signal callback generation
2023-09-11 18:45:39 +03:00
Rémi Verschelde
cfd292939c
Haiku: Remove remnants of past WIP platform port
...
The Haiku platform port was never finalized, and moved to a separate repo in
Godot 3.2 days: https://github.com/godotengine/godot-platform-haiku
Sadly it didn't garner more interest there and is bitrotting. It was never
ported to Godot 4 so the bits of Haiku support left in Mono aren't useful.
2023-09-07 16:37:51 +02:00
Rémi Verschelde
8de6405288
UWP: Remove platform port, needs to be redone from scratch for 4.x
...
The UWP platform port was never ported to the Godot 4.0+ API,
and it's now accumulating bitrot as it doesn't compile, and thus
we no longer propagate platform changes in it.
So we finally remove to acknowledge this state. There's still some
interest in reviving the UWP port eventually, especially as support
for Direct3D 12 will soon be merged, but when that happens it will
be easiest to redo it from scratch.
2023-09-07 15:01:59 +02:00
Yuri Sizov
d8ff69d53c
Extract ScriptInstance to simplify includes
...
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.
This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
2023-09-06 22:54:38 +02:00
Rémi Verschelde
00e14f39fd
Merge pull request #81230 from SamiKalliomaki/array-dispose
...
Fix double unregistration on dispose of Array.
2023-09-04 09:08:35 +02:00
Rémi Verschelde
0215d53a10
Merge pull request #81229 from raulsntos/dotnet/arc-hyperbolic
...
C#: Expose `asinh`, `acosh` and `atanh` in Mathf
2023-09-04 09:08:12 +02:00
Sami Kalliomäki
43a6748dfd
Do not call Array default constructor when not necessary.
...
This fixes a bug where Array would get registered twice with the
DisposablesTracker causing an exception on shutdown.
Fixes #81231
2023-09-03 11:25:23 +01:00
Rémi Verschelde
2e71e5516e
Merge pull request #80632 from Repiteo/C#-editor-docstring
...
C#: Dereference editor types in core documentation
2023-09-02 14:28:35 +02:00
Raul Santos
f90005072c
C#: Expose asinh
, acosh
and atanh
in Mathf
2023-09-02 12:00:02 +02:00
Thaddeus Crews
cbf17b5ac1
C#: Dereference editor types in core documentation
2023-09-01 15:17:13 -05:00
Rémi Verschelde
07f6fa8ff9
Merge pull request #80629 from Repiteo/C#-CS0419
...
C#: Include argument types in generated methods
2023-09-01 16:01:24 +02:00
Rémi Verschelde
549fcce5f8
Merge pull request #81175 from raulsntos/dotnet/project_settings_changed
...
C#: Replace usage of deprecated `project_settings_changed` signal
2023-08-31 08:56:55 +02:00
Rémi Verschelde
1594acc64e
Merge pull request #81073 from raulsntos/dotnet/cached-string-names
...
C#: Replace `StringNameCache` with `SNAME`
2023-08-31 08:54:53 +02:00
Raul Santos
cde9dc6c3c
C#: Replace usage of deprecated project_settings_changed
signal
...
Replace usage of `EditorPlugin::project_settings_changed` signal with `ProjectSettings::settings_changed`.
2023-08-30 19:45:41 +02:00
Markus Sauermann
c4705a590b
Fix Object::notification order
...
Previously the `p_reversed` parameter didn't influence the order
in a correct way.
Also script overridden _notification functions were not called in
the correct order.
To fix this some `notification` functions had to add a `p_reversed`
parameter.
This made it necessary to adjust cpp-bindings.
Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-08-30 00:15:55 +02:00
Rémi Verschelde
76d318dbd1
Merge pull request #75778 from KoBeWi/_vp
...
Expose `_validate_property()` for scripting
2023-08-29 12:41:27 +02:00
Raul Santos
6d7d083254
C#: Replace StringNameCache
with SNAME
2023-08-28 15:41:26 +02:00
kobewi
67db4693eb
Expose _validate_property() for scripting
2023-08-28 15:18:48 +02:00
Yuri Sizov
2c77f07aaa
Add a script method to get its class icon
...
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2023-08-24 13:05:41 +02:00
Rémi Verschelde
a017e9c698
Merge pull request #80119 from MewPurPur/svg-opacities-standardization
...
Optimize and fix up some SVGs
2023-08-18 09:30:23 +02:00
Rémi Verschelde
1d852cb75e
Merge pull request #80631 from Repiteo/C#-delegate-docstring
...
C#: Fixed delegate docstring logic
2023-08-16 09:15:50 +02:00
Rémi Verschelde
db1a5dc41a
Merge pull request #80630 from Repiteo/C#-paramref
...
C#: paramref now properly tagged in documentation
2023-08-16 09:15:27 +02:00
Thaddeus Crews
f735aa1fc2
C#: Include argument types in generated methods
...
• Prevents warnings over ambiguous references with Compat.cs
• Fix typo in Compat.cs causing AddCodeCompletionOption documentation to inherit itself
2023-08-14 16:15:49 -05:00
Thaddeus Crews
10cc46196b
C#: paramref now properly tagged in documentation
...
• If part of a signal, the old documentation style is used, as it points to a delegate & doesn't have actual parameters to reference
2023-08-14 15:16:52 -05:00
Thaddeus Crews
4d7c07a132
C#: Fixed delegate docstring logic
...
• No longer produces double-summaries
2023-08-14 11:17:47 -05:00
Thaddeus Crews
51154a86a1
Implement proxy_name for EnumInterface
...
• Fixes generated CS1574 warnings
2023-08-14 10:47:14 -05:00
William Scalf
41cf94e8b6
Allow readonly and writeonly C# properties to be accessed from GDScript
2023-08-13 18:35:10 -04:00
MewPurPur
93318d2dd5
Optimize and fix up some SVGs
2023-08-13 17:48:17 +03:00
scgm0
05bc070f7c
C#: Fix exporting for Android
2023-08-12 09:22:49 +08:00
Yuri Sizov
951ea2415b
Make EditorInterface accessible as a singleton
...
- EditorPlugin.get_editor_interface() is removed as redundant.
2023-08-09 16:01:31 +02:00
Rémi Verschelde
750f1a66b6
Merge pull request #80303 from raulsntos/dotnet/warnings/CS1572
...
C#: Fix typo in parameter name in documentation
2023-08-07 14:53:58 +02:00
Rémi Verschelde
8018b478ca
Merge pull request #79470 from raulsntos/dotnet/singleton-can-be-instances-too
...
C#: Generate instance types for singletons
2023-08-07 14:47:51 +02:00
Rémi Verschelde
faaf27f284
Fix various typos with codespell
...
Also includes typo fixes from #79993 , #80068 , #80276 , and #80303 .
Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
Raul Santos
23f7f24e8a
C#: Add hard-coded singletons to avoid breaking compat
...
Co-authored-by: Ignacio Etcheverry <ignalfonsore@gmail.com>
2023-08-06 19:02:53 +02:00
Raul Santos
6b713b1682
C#: Generate instance types for singletons
2023-08-06 00:48:22 +02:00
Raul Santos
958a6cd953
C#: Fix typo in parameter name in documentation
2023-08-05 20:00:49 +02:00
Yuri Sizov
c244903c3d
Merge pull request #78846 from raulsntos/dotnet/data_dir_name_now_with_more_platform
...
C#: Add platform name to the exported data directory
2023-08-04 21:01:38 +02:00
Rémi Verschelde
c236503b75
Merge pull request #79958 from van800/master-rider-path-locator-fleet
...
Delegate opening files for Rider to the RiderPathLocator NuGet package
2023-08-04 16:59:23 +02:00
Ivan Shakhov
7f8e3ab5cd
Delegate opening files for Rider to the RiderPathLocator NuGet package, fix https://github.com/godotengine/godot/pull/78832#issuecomment-1633330344
2023-08-04 10:31:33 +02:00
Raul Santos
03598062fd
C#: Move build button to EditorRunBar
...
- Move C# build button to `EditorRunBar`.
- Add C# build icon.
- Add shortcut macros to `GodotTools`.
- Move C# build shortcuts to C#.
2023-08-03 17:55:52 +02:00
Rémi Verschelde
0606ba7c50
Merge pull request #80212 from raulsntos/dotnet/check_api_assemblies_dir_exists
...
Show alert if .NET assemblies dir does not exist
2023-08-03 14:47:02 +02:00
Rémi Verschelde
8b6c867c81
Merge pull request #79280 from raulsntos/dotnet/better-push-error
...
C#: Improve `GD.PushError` and `GD.PushWarning`
2023-08-03 14:46:44 +02:00
Raul Santos
ef0e279fbb
Show alert if .NET assemblies dir does not exist
2023-08-03 13:52:13 +02:00
Raul Santos
b9f1136d03
C#: Add platform name to the exported data directory
2023-08-03 13:12:45 +02:00
Yuri Sizov
0a9006a5aa
Merge pull request #79501 from raulsntos/dotnet/warnings/NU5128
...
C#: Suppress NU5128 warning
2023-08-02 21:36:51 +02:00
Rémi Verschelde
2132638937
Merge pull request #79404 from raulsntos/dotnet/lines-open-in-external-editor
...
C#: Fix line in OpenInExternalEditor
2023-08-02 12:17:31 +02:00
Rémi Verschelde
ed301a4078
Merge pull request #79249 from raulsntos/dotnet/dont-ignore-call-error
...
C#: Print error when MethodBind/Callable call fails
2023-08-02 12:16:15 +02:00
Yuri Sizov
02f04a3c1a
Merge pull request #80047 from AbeniMatteo/dev-colors
...
Mono: Avoid dictionary lookup for common colors
2023-08-01 17:25:56 +02:00
Ignacio Roldán Etcheverry
54ba3cf768
Merge pull request #73257 from RedworkDE/net-android-support
...
C#: Support exporting for Android
2023-07-31 17:07:48 +02:00
AbeniMatteo
e5d8ac4020
Avoid dictionary lookup for common colors
2023-07-30 09:17:59 +02:00
Raul Santos
77e5e195f5
C#: Print error when MethodBind/Callable call fails
2023-07-28 19:18:08 +02:00
Yuri Sizov
000bf3733e
Merge pull request #79748 from Repiteo/dotnet-documentation-fixes
...
Fix issues in C# documentation comments
2023-07-25 21:51:28 +02:00
Yuri Sizov
b78fe83ed4
Merge pull request #79239 from raulsntos/dotnet/document-generated-members
...
C#: Document generated members
2023-07-25 21:51:20 +02:00
Thaddeus Crews
0bfc52b02b
Fixes to existing C# documentation
...
• changes instances of `see paramref` to `paramref name`
• specifies `real_t` for ambiguous methods
2023-07-21 10:34:42 -05:00
Yuri Sizov
f8f06d3d38
Merge pull request #78264 from magian1127/4.0StringName
...
C#: Add `PropertyHint.Enum` support to `Array<StringName>`
2023-07-18 12:19:37 +02:00
Raul Santos
132a1daf1a
C#: Fix line in OpenInExternalEditor
2023-07-17 18:44:17 +02:00
Yuri Sizov
9c74f3408b
Merge pull request #79082 from geowarin/master
...
Add missing useModelFront parameter to GodotSharp Basis and Transform
2023-07-17 16:50:28 +02:00
Raul Santos
f2e9cbf9e8
C#: Suppress NU5128 warning
...
Suppress dependencies of SourceGenerators package to fix NU5128.
2023-07-15 15:25:37 +02:00
Yuri Sizov
bb6879e7cc
Merge pull request #79007 from 398utubzyt/dotnet/globalclass-analyzer
...
C#: Add a Roslyn analyzer for global classes
2023-07-14 18:49:16 +02:00
Yuri Sizov
e4c89a0278
Merge pull request #78877 from mattdiener/master
...
C# Fix deserialization of delegates that are 0-parameter overloads
2023-07-12 15:09:36 +02:00
Raul Santos
13ab2b6f4f
C#: Improve GD.PushError
and GD.PushWarning
...
- Use the name, file path and line number of the caller that invokes
`GD.PushError` and `GD.PushWarning` instead of the location in the C++
`runtime_interop.cpp` file.
- Improvements to getting the C# stack trace.
- Use C# type keywords for built-in types in method declarations.
- Remove extra space before each parameter in method declarations.
- Skip one more frame to avoid `NativeInterop.NativeFuncs`.
- Skip methods annotated with the `[StackTraceHidden]` attribute.
- Improvements to `ScriptEditorDebugger` when source is in project.
- Avoid overriding error metadata when the source is inside the
project file.
- Use the source function in the title when the source is inside
the project file.
Users that use these methods would expect the reported location printed
by these methods to correspond to a location in their project source files.
Specifically, they'd expect to see the file path and line number at which
they call these methods, and not the location of the C++ code (which is
always the same). Now, these methods are a lot more useful since users
can know which line in their source code printed the error/warning.
2023-07-11 11:19:11 +02:00
Raul Santos
12e4aa93b3
C#: Document generated members
...
Documents generated members and tries to discourage users from calling/overriding internal methods that only exist to be used by the engine.
2023-07-09 14:26:15 +02:00
Rémi Verschelde
157973ad5e
Merge pull request #79173 from RedworkDE/net-commandline-exporting
...
C#: Fix command line exporting
2023-07-08 18:23:06 +02:00
Rémi Verschelde
4a3c6629be
Merge pull request #78832 from van800/path_locator_4x
...
Update the RiderPathLocator to support the JetBrains Toolbox 2.0
2023-07-08 18:19:01 +02:00
398utubzyt
8e56c807cc
C#: Add a Roslyn analyzer for global classes
...
Co-Authored-By: Raul Santos <raulsntos@gmail.com>
2023-07-07 16:37:16 -07:00
RedworkDE
f3f3365abd
C#: Fix command line exporting
2023-07-07 20:51:46 +02:00
RedworkDE
693e6e036b
C#: Add null check before calling UnregisterGodotObject
2023-07-07 13:10:16 +02:00
Rémi Verschelde
26a58976e7
Merge pull request #79094 from raulsntos/dotnet/fix-symbol-comparison
...
C#: Compare symbol names without null flow state
2023-07-07 08:35:20 +02:00
Geoffroy Warin
6c6e5c482c
Add missing useModelFront parameter to GodotSharp Basis and Transform
...
To LookAt methods.
Also adds Vector3 Model constants.
These were not added after #76082 was merged.
2023-07-06 19:01:02 +02:00
Raul Santos
671a5b4ea5
C#: Compare symbol names without null flow state
2023-07-06 16:10:14 +02:00
Rémi Verschelde
81064cc239
Doctool: Remove version attribute from XML header
...
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
Yuri Sizov
b7c2fd2e9a
Bump version of module docs to 4.2
2023-07-05 22:58:30 +02:00
Rémi Verschelde
8a847d82a8
Merge pull request #78722 from RedworkDE/net-auto-version-defines
...
C#: Automatically generate version defines
2023-07-05 22:15:47 +02:00
Rémi Verschelde
346f1ab86b
Bump version to 4.2-dev
...
Keep on waitin'
2023-07-05 22:07:03 +02:00
Ivan Shakhov
bf3af9fd48
Update the RiderPathLocator to support the JetBrains Toolbox 2.0
2023-07-02 20:55:26 +02:00
Ignacio Roldán Etcheverry
22aad32c69
C#: Fix NodePaths completion error for not calling from main thread
...
The node API we use for code completion changed and no longer allows
being called from threads other than the main one.
2023-07-02 03:48:15 +02:00
Matt Diener
783facf60b
C# Fix deserialization of delegates that are 0-parameter overloads
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-06-30 17:26:43 -04:00
RedworkDE
f759cc00a3
C#: Enable exporting for Android
2023-06-28 22:34:14 +02:00
RedworkDE
7c456d2d0d
C#: Remove old and unused android support code for mono
2023-06-28 22:34:14 +02:00
RedworkDE
777d959e05
C#: Add option to embed dotnet build outputs into the data file
2023-06-28 22:04:51 +02:00
RedworkDE
fe7c27b086
C#: Automatically generate version defines
2023-06-28 21:45:58 +02:00
RedworkDE
60b9eb169e
C# Fix reloading of non-tool scripts
2023-06-28 11:46:43 +02:00
Rémi Verschelde
af16013905
Merge pull request #78571 from MewPurPur/include-extension-info
...
Document file extensions of GDScript, CSharpScript, and Shader
2023-06-22 18:32:25 +02:00
MewPurPur
8848c395b6
Add information about file extension to GDScript, CSharpScript, and Shader
2023-06-22 18:56:08 +02:00
Yuri Sizov
57e61db115
Merge pull request #75533 from RedworkDE/net-no-reload-noncollectible
...
C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
2023-06-22 12:45:02 +02:00
Paul Joannon
dbdbe5b042
Fix condition blocking .NET project build
...
Since #73015 , the build commands are called on project files instead of solution ones.
2023-06-21 20:13:32 +02:00
RedworkDE
e0f644a48d
C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
...
- Do not reload scripts from non-collectible assemblies
- Do not load GodotTools as collectible
- Do not attempt to reload the same project assembly forever
2023-06-21 12:47:52 +02:00
Rémi Verschelde
af08b17f97
Merge pull request #78466 from raulsntos/dotnet/define-constants-without-whitespace
...
C#: Remove whitespace from define constants
2023-06-20 14:56:19 +02:00
Raul Santos
8f6166bd14
C#: Remove whitespace from define constants
...
Co-authored-by: RedworkDE <10944644+RedworkDE@users.noreply.github.com>
2023-06-20 14:33:45 +02:00
Raul Santos
bd65ae633d
C#: Add compat overloads
2023-06-20 12:11:13 +02:00
Raul Santos
48e20c628a
C#: Set PropertyInfo.class_name
for method parameters
2023-06-16 23:19:38 +02:00
Rémi Verschelde
7f5ef953b7
Merge pull request #78249 from RedworkDE/net-version-define
...
C#: Add version defines to help users deal with breaking changes
2023-06-15 15:26:31 +02:00
Rémi Verschelde
58416245ce
Merge pull request #78218 from raulsntos/dotnet/reserved-assembly-name
...
C#: Avoid GodotSharp as project assembly name
2023-06-15 15:26:22 +02:00
Rémi Verschelde
25b2f1780a
Style: Harmonize header includes in modules
...
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:
Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.
Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:
- Local includes
* Conditional local includes
- Core includes
* Conditional core includes
- Thirdparty includes
* Conditional thirdparty includes
2023-06-15 14:35:45 +02:00
RedworkDE
1b466c6298
C#: Add version defines to help users deal with breaking changes
2023-06-15 13:18:04 +02:00
Raul Santos
7a031be769
C#: Avoid GodotSharp as project assembly name
...
The name GodotSharp conflicts with the name of the Godot assembly,
this causes a cyclic dependency.
2023-06-15 11:43:35 +02:00
Magian
e8aeb6baa0
C# Array<StringName> support PropertyHint.Enum
2023-06-15 16:01:42 +08:00
RedworkDE
92f13ba9ea
C#: Unify project name handling and fix issues with the handling of some special characters
...
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-06-14 21:07:58 +02:00
RedworkDE
d515fcc47a
C#: Fix crash with DisposablesTracker_OnGodotShuttingDown
2023-06-13 07:49:21 +02:00
Mikael Hermansson
1c1d1a1e2e
Fix crash when using base types of extension-based types from C#
2023-06-12 18:29:52 +02:00
Rémi Verschelde
5047892939
Merge pull request #73939 from raulsntos/dotnet/export-symbols
...
C#: Add option to disable exporting debug symbols
2023-06-09 12:14:15 +02:00
Rémi Verschelde
aa5dfff3f0
Merge pull request #77410 from dsnopek/object-pointer-pointer-encoding
...
Standardize Object ptrcall encoding on `Object **`
2023-06-07 13:31:49 +02:00
RedworkDE
e0efa3c357
C#: Always decode dotnet
output as UTF-8
2023-06-07 10:58:34 +02:00
Rémi Verschelde
0a0132ccf4
Merge pull request #77904 from raulsntos/dotnet/obsolete-deprecated-members
...
C#: Add `[Obsolete]` attribute to deprecated members
2023-06-06 20:40:09 +02:00
Rémi Verschelde
e2fcc4de34
Merge pull request #75188 from RedworkDE/net-synchronize-insert
...
C#: Synchronize adding ScriptInstances
2023-06-06 20:39:16 +02:00
Raul Santos
0484993121
C#: Add [Obsolete]
attribute to deprecated members
2023-06-06 12:23:23 +02:00
VolTer
119456304b
Reduce the total size of our SVGs by 15%
2023-06-04 15:11:48 +02:00
Raul Santos
0aa1f3440e
C#: Add option to disable exporting debug symbols
...
- Add export option to configure if the exported game should include debug symbols (PDB).
- Remove unused `outputDir` local variable.
- Replace `Process.GetCurrentProcess().Id` with `System.Environment.ProcessId` (CA1837).
2023-06-02 16:37:59 +02:00
Yuri Sizov
f00641af9d
Merge pull request #77657 from vmedea/color-hex-doc
...
Clarify doc for Color.hex
2023-05-30 15:59:39 +02:00
mara
779ac20bb9
Clarify doc for Color.hex and C# Color()
...
The "alpha channel first" seems misleading to me. It doesn't match with
the examples, so remove it. Add a more detailed specification of the
expected number format in hex.
2023-05-30 15:15:04 +02:00
Raul Santos
a1f454fee3
C#: Add global class support
...
Co-authored-by: willnationsdev <willnationsdev@gmail.com>
2023-05-29 19:04:02 +02:00
David Snopek
77733faede
Attempt to standardize Object ptrcall encoding on Object **
2023-05-25 21:46:22 -05:00
RedworkDE
fa14b6d212
C#: Fix SendToScriptDebugger
crash
2023-05-23 00:00:32 +02:00
RedworkDE
8fdebb85ef
C#: Synchronize adding ScriptInstances
2023-05-22 21:40:14 +02:00
Rémi Verschelde
4fd64edc30
Merge pull request #77199 from RedworkDE/net-callable-hash
...
C#: Mostly fix hash of ManagedCallable
2023-05-22 13:48:58 +02:00
Yuri Sizov
156a2fabea
Merge pull request #76659 from shana/shana/75152-fix-crash-when-initializing-glue-generation
...
Skip initializing the C# runtime when generating glue bindings
2023-05-19 17:10:40 +02:00
Andreia Gaita
e56fdc8a9a
Skip initializing the C# runtime when generating glue bindings
...
The bindings generator doesn't require the C# runtime in order to generate
the glue, and when it the glue generation runs, it exits immediately
afterwards, so we can skip this initialization when the `--generate-mono-glue`
flag is passed in.
Fixes issue 75152
2023-05-18 13:57:42 +02:00
RedworkDE
1cfc382fe8
C#: Mostly fix hash of ManagedCallable
...
The hash can still change when reloading assemblies but in all other
cases the result should be correct.
2023-05-18 13:44:36 +02:00
Paul Joannon
178cd046bb
Link the right build property to REAL_T_IS_DOUBLE
2023-05-18 13:37:34 +02:00
Rémi Verschelde
c64afeb017
Merge pull request #77018 from RedworkDE/net-glue-neg-enum
...
Fix C# glue generation for enums with negative values
2023-05-12 23:27:07 +02:00
Rémi Verschelde
f26a2dbb1b
Merge pull request #75662 from goncalo/basis_looking_at
...
C#: Add Basis.LookingAt
2023-05-12 23:25:52 +02:00
RedworkDE
45659ce2d9
Fix C# glue generation for enums with negative values
2023-05-12 21:53:42 +02:00
Rémi Verschelde
8f17f26233
Merge pull request #76978 from raulsntos/property-hint-compat
...
Reorder `PropertyHint` enum to avoid breaking compat
2023-05-12 10:06:32 +02:00
Raul Santos
a34207b812
Reorder PropertyHint enum to avoid breaking compat
...
Also syncs the Core enum with the C# enum for the source generators.
2023-05-12 01:48:07 +02:00
clayjohn
f83a90192f
Revert "Add API for HSL conversion"
...
This reverts commit 0b7fd664c1
.
2023-05-10 17:45:56 -03:00
Rémi Verschelde
0f444f101a
Merge pull request #76661 from bonjorno7/hsl
...
Add API for HSL conversion
2023-05-09 19:28:35 +02:00
bonjorno7
0b7fd664c1
Add API for HSL conversion
...
Math ported pretty much 1:1 from https://en.wikipedia.org/wiki/HSL_and_HSV
Style doesn't match the existing HSV code exactly, but should be close enough.
2023-05-09 17:43:10 +02:00
Clay John
610877e326
Merge pull request #72288 from MewPurPur/use-string-repeat
...
Use `String.repeat()` to optimize several String methods
2023-05-05 09:56:48 -07:00
VolTer
6b84e258d2
Use String.repeat() in more places
2023-05-01 02:27:46 +02:00
Rémi Verschelde
8f7b09916d
Merge pull request #76026 from YuriSizov/editor-running-up-that-gui
...
Extract editor run toolbar into its own component
2023-04-26 12:15:29 +02:00
RedworkDE
692ad70fd7
C#: Do not use DocCache when generating glue code
2023-04-20 15:35:14 +02:00
Yuri Sizov
8a74d8438f
Extract editor run toolbar into its own component
...
- Simplify and update its logic.
- Simplify EditorScript.
- Improve EditorNode and other relevant includes.
- Fix scene-based path in the movie writer when
reloading a scene.
2023-04-19 17:12:28 +02:00
RedworkDE
34b4128004
C#: Make include scripts contents an export option
2023-04-18 14:27:15 +02:00
Kevin Simpson
c2b97ec1f7
Add the ability to set a custom C# editor
...
This allows users to still use the built-in Godot editor for GDScript.
2023-04-18 13:55:08 +02:00
Gonçalo Vasconcelos
b74d4f45bb
C#: Add Basis.LookingAt
2023-04-11 16:05:35 +01:00
RedworkDE
27124ed8e5
C#: Discontinue GodotNuGetFallbackFolder
2023-04-07 19:22:43 +02:00
bendn
ca0feabbb0
add hex_decode()
to String
2023-04-05 19:44:00 +07:00
Yuri Sizov
ce03630f34
Merge pull request #75477 from kleonc/csharp-fix-vector234i-from-floats-creation
...
C# Truncate instead of round in Vector2/3/4 to Vector2I/3I/4I conversion
2023-03-31 13:01:48 +02:00
Yuri Sizov
8f6ce4c8f9
Merge pull request #71049 from alexdlm/dotnet-generator-selective-disable
...
Add fine-grained disabling of SourceGenerators
2023-03-31 12:56:03 +02:00
kleonc
f53d3382af
C# Truncate instead of round in Vector2/3/4 to Vector2I/3I/4I conversion
2023-03-31 10:59:11 +02:00
Redwarx008
eb1fb254a6
C#: Fix Array.AddRange index out of bounds
...
Fix Array.AddRange index out of bounds
2023-03-27 21:55:06 +08:00
Yuri Sizov
7ef4ada3a6
Merge pull request #75286 from AThousandShips/csharp_shadow
...
Fix "hides member" warnings in `csharp_script.cpp`
2023-03-25 16:15:25 +01:00
Ninni Pipping
ff5d8c4a42
Fix "hides member" warnings in csharp_script.cpp
2023-03-25 14:44:12 +01:00
Alex de la Mare
8ab3295e57
Add fine-grained disabling of SourceGenerators
...
This allows manual testing and/or alternate source generators to
provide functionality without conflict.
2023-03-25 13:46:12 +11:00
RedworkDE
42cf684837
C#: Do not print errors about missing references to intentionally ignored members
2023-03-24 20:21:55 +01:00
Yuri Sizov
8402927d3f
Prevent crashing on startup if project has scripted theme types
...
Also avoid order of operation conflicts by moving C# binding generation hook to main.cpp
2023-03-08 11:17:21 +01:00
Rémi Verschelde
b8126b18dc
Merge pull request #73429 from bruvzg/macos_no_sc
...
[macOS] Re-add support for the _sc_ inside app bundle.
2023-03-07 08:36:51 +01:00
RedworkDE
6019f497b8
C#: Fix building projects for MSBuild before 17.3
2023-03-06 17:58:20 +01:00
Rémi Verschelde
5dccc940e7
Merge pull request #74375 from raulsntos/dotnet/ignore-explicit-interface-implementations
...
C#: Ignore explicit interface implementations
2023-03-05 13:39:45 +01:00
Rémi Verschelde
b2622218f9
Merge pull request #74330 from aleksrutins/csharp-identifier-validation
...
Ensure that C# script names (and therefore class names) are valid identifiers
2023-03-05 13:29:26 +01:00
Rémi Verschelde
afc9d381d5
Merge pull request #74312 from raulsntos/dotnet/godot-project-dir-base64
...
C#: Encode GodotProjectDir as Base64 to prevent issues with special characters
2023-03-05 13:28:14 +01:00
Raul Santos
f949e94991
C#: Encode GodotProjectDir as Base64 to prevent issues with special characters
2023-03-04 23:33:30 +01:00
Raul Santos
0372bd56b6
C#: Ignore explicit interface implementations
2023-03-04 19:16:48 +01:00
Aleks Rutins
ae8752a731
Validate that C# class names are valid identifiers
2023-03-04 10:30:40 -05:00
RedworkDE
16a2a164fe
C#: Get singleton instances using the Core name
2023-03-03 16:30:18 +01:00
Rémi Verschelde
526f115752
Merge pull request #73904 from raulsntos/dotnet/tools-popup
...
C#: Always show "Create C# solution" option
2023-03-02 11:22:59 +01:00
Rémi Verschelde
880247ad54
Merge pull request #74127 from RedworkDE/net-debug-crash
...
C#: Fix crash when errors occur before language initialization.
2023-03-02 11:20:26 +01:00
Rémi Verschelde
1c1524a651
Bump version to 4.1-dev
...
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
RedworkDE
c0ebc28136
C#: Fix crash when errors occur before language initialization.
2023-03-01 00:00:33 +01:00