summaryrefslogtreecommitdiff
path: root/modules/mono/mono_gd
AgeCommit message (Collapse)Author
2020-12-06Tweak log file names for consistency between Mono and non-Mono logsHugo Locurcio
- Avoid spaces in Mono log file names. - Use a `.log` extension for Mono logs, just like non-Mono logs. - Use periods to separate hours/minutes/seconds for non-Mono logs.
2020-12-06Merge pull request #44106 from neikeq/mono-invoke-no-params-boxingRémi Verschelde
Don't box params on Native->C# calls with Variant params
2020-12-06Don't box params on Native->C# calls with Variant paramsIgnacio Etcheverry
Godot uses Variant parameters for calls to script methods. Up until now we were boxing such parameters when marshalling them for invokation, even if they were value types. Now Godot allocates the marshalled parameters on the stack, reducing the GC allocations resulted from boxing.
2020-12-05Fix unhandled exception re-thrown in the editorIgnacio Etcheverry
2020-11-16Remove empty lines around braces with the formatting scriptAaron Franke
2020-11-09Variant: Rename Type::_RID to Type::RIDRémi Verschelde
The underscore prefix was used to avoid the conflict between the `RID` class name and the matching enum value in `Variant::Type`. This can be fixed differently by prefixing uses of the `RID` class in `Variant` with the scope resolution operator, as done already for `AABB`.
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-10-26C#: Fix custom event signals crash on hot-reloadIgnacio Etcheverry
Cleanup and re-initialization of event signals before and after hot-reload should be working correctly now.
2020-10-18Refactor MethodBind to use variadic templatesreduz
Removed make_binders and the old style generated binders.
2020-10-02iOS: RefactoringSergey Minakov
Enabled ARC for iOS. Weakify/Strongify macros for objc blocks. Removed old version checks. Specific types for ObjC++ modules to exclude unneeded bridging. Separate DeviceMetrics class for device specific data. Replaced old/deprecated functionality.
2020-09-13Add mono log message to error for fatal errorsTom Daffin
2020-09-08C#: Fix endless reload loop if project has unicode charsIgnacio Etcheverry
The assembly modified time wasn't picked properly as the path was treated as latin-1, so the file watcher was constantly firing the event.
2020-09-04Merge pull request #41748 from neikeq/issue-41712Rémi Verschelde
Fix 'Parameter "assembly" is null' error
2020-09-04Fix 'Parameter "assembly" is null' errorIgnacio Etcheverry
This error was normally being printed when trying to open the project assembly while the project was not yet built. The error should not be printed. It's the job of this method's caller to decide whether to print an error or not if loading failed.
2020-09-03[Complex Test Layouts] Change `String` to use UTF-32 encoding on all platforms.bruvzg
2020-08-30Fix clang-tidy warnings due to semicolon after mono module macrosIgnacio Etcheverry
This also enforces them to end with a semicolon.
2020-07-27Pop from front to avoid infinite loop with nested classesNhiqill
2020-07-05Fix Mono PackedArray MarshallingDaniel Doran
2020-07-05Merge pull request #40137 from neikeq/fix-clangtidy-warnings-monoRémi Verschelde
Mono/C#: Fix several clang-tidy warnings and cleanup
2020-07-05Mono/C#: Fix several clang-tidy warnings and cleanupIgnacio Etcheverry
2020-07-03fix crash when pass null in print array in GD.printendlesstravel
fix crash when pass null in print array in GD.print 2 fix crash when pass null in print array in GD.print 3 fix space
2020-06-25Mono/C#: Fix unhandled exception not being printedIgnacio Etcheverry
For some reason `mono_unhandled_exception` is not printing the exception as its comment claims. Use `mono_print_unhandled_exception` instead.
2020-06-17return boxed long when marshalling a godot int to mono runtime in dynamic ↵Michael Belousov
contexts
2020-05-30Fixes building mono release templatesNutmegStudio
2020-05-22Mono/C#: Don't try to load project assembly in project managerIgnacio Etcheverry
This was causing an error message when launching the manager, because there is no project assembly to load.
2020-05-14Style: Enforce separation line between function definitionsRémi Verschelde
I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-14Port member initialization from constructor to declaration (C++11)Rémi Verschelde
Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
2020-05-10Revert "Renamed plane's d to distance"Rémi Verschelde
This reverts commit ec7b481170dcd6a7b4cf0e6c1221e204ff7945f3. This was wrong, `d` is not a distance but the `d` constant in the parametric equation `ax + by + cz = d` describing the plane.
2020-05-10Merge pull request #38621 from akien-mga/stylé-comme-jamaisRémi Verschelde
Style: clang-format: Disable if statements and case labels on single line
2020-05-10Merge pull request #38600 from neikeq/noIgnacio Roldán Etcheverry
Switch to nuget Microsoft.Build and rewrite GodotTools messasing protocol
2020-05-10Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde
Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10Renamed plane's d to distanceMarcus Elg
2020-05-09C#: Rewrite GodotTools messaging protocolIgnacio Etcheverry
2020-05-09C#/Mono: Check assembly version when loadingIgnacio Etcheverry
Not sure if we should check revision too, but this is good enough for what we want. This will be needed to load the correct Microsoft.Build when we switch to the nuget version.
2020-05-09Mono: Fix hot-reloading of nested classesIgnacio Etcheverry
2020-04-23Mono/C#: Fix load hook not called for some assemblies on domain reloadIgnacio Etcheverry
2020-04-23Merge pull request #38123 from neikeq/fix-hotreload-twiceRémi Verschelde
Mono/C#: Fix assemblies being reloaded a second time unnecesarily
2020-04-23C#: Revert marshalling of IDictionary/IEnumerable implementing typesIgnacio Etcheverry
Added marshalling for `System.Collections.Generic.List<T>` and `System.Collections.Generic.Dictionary<TKey, TValue>`.
2020-04-23Mono/C#: Fix assemblies being reloaded a second time unnecesarilyIgnacio Etcheverry
2020-04-22Merge pull request #38117 from neikeq/export-mono-array-godot-objectIgnacio Roldán Etcheverry
Mono/C#: Allow exporting System.Array of type Godot.Object
2020-04-22Mono/C#: Allow exporting System.Array of type Godot.ObjectIgnacio Etcheverry
2020-04-22Mono/C#: Allow debugging exported gamesIgnacio Etcheverry
- Include PDB files in exported games. - Release export templates also allow debugging now. Right now the only way to enable debugging in exported games is with the environment variables, which may be cumbersome or not even possible on some platforms.
2020-04-03Fix C# bindings after recent breaking changesIgnacio Etcheverry
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-31Mono/C#: Add iOS supportIgnacio Etcheverry
Right now, games only work on devices when exported with FullAOT+Interpreter. There are some issues left that need to addressed for FullAOT alone. Right now, it's giving issues with the Godot.NativeCalls static constructor.
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-03-18C#: Fix uses of old Configuration namesIgnacio Etcheverry
2020-03-18Merge pull request #36756 from aaronfranke/mono-vec2i3iIgnacio Roldán Etcheverry
[Mono] Add Vector2i and Vector3i