summaryrefslogtreecommitdiffstats
path: root/core/debugger/remote_debugger.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Use doubles for time in many other placesAaron Franke2021-08-091-9/+9
|
* Merge pull request #50454 from Ev1lbl0w/gsoc21-dapFabio Alessandrelli2021-08-031-2/+5
|\ | | | | Implemented initial DAP support
| * Implemented initial DAP supportEv1lbl0w2021-08-021-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implemented "output" event Refactored "seq" field generation Prevent debugging when editor and client are in different projects Removed unneeded references to peer on the parser Refactored way to detect project path Implemented "setBreakpoints" request Fix double events when terminating from client Refactored "stopped" event Implemented "stopped" with breakpoint event Implemented "stackTrace", "scopes" and "variables" request Report incoming number of stack dump variables Implemented proper reporting of scopes and variables from stack frames Prevent editor from grabbing focus when a DAP session is active Implemented "next" and "stepIn" requests Implemented "Source" checksum computing Switched expected errors from macros to silent guards Refactored message_id Respect client settings regarding lines/columns behavior Refactored nested DAP fields Implement reporting of "Members" and "Globals" scopes as well Fix error messages not being shown, and improved wrong path message
* | Use const references where possible for List range iteratorsRémi Verschelde2021-07-251-1/+1
| |
* | Use C++ iterators for Lists in many situationsAaron Franke2021-07-231-7/+7
|/
* RemoteDebugger: Fix possible division by zeroRémi Verschelde2021-03-041-0/+1
|
* Update copyright statements to 2021Rémi Verschelde2021-01-011-2/+2
| | | | | | | | | | | | | | Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
* Merge pull request #44593 from madmiraal/rename-mainloop-methodsRémi Verschelde2020-12-281-1/+1
|\ | | | | Rename MainLoop methods to match Node methods
| * Rename MainLoop methods to match Node methodsMarcel Admiraal2020-12-221-1/+1
| |
* | Rename empty() to is_empty()Marcel Admiraal2020-12-281-2/+2
|/
* Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-2/+2
| | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* Added Custom Performance Monitor and feature to read intermediate values of ↵simpu2020-06-291-1/+21
| | | | | | | | | | | | | | | | Monitor Custom monitors can be added/removed/checked using `Performance.add_custom_monitor`/`Performance.remove_custom_monitor`/`Performance.has_custom_monitor` The value can be viewed in the `Monitor` tab of Debugger. Text before `/` is used to categorize the custom monitor. `EditorPerformanceProfiler` class is created to separate logic from `ScriptEditorDebugger` User can click on the graph of monitors to read the value at that point. Graph includes intermediate base lines.
* Style: Enforce braces around if blocks and loopsRémi Verschelde2020-05-141-29/+55
| | | | | Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-16/+0
| | | | | | | | | | | | | | 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.
* Add support for multiple RemoteDebuggerPeer(s).Fabio Alessandrelli2020-05-121-7/+3
| | | | | It is now possible to register protocol handlers (default tcp://) to support additional debugging communication layers (e.g. websocket).
* Merge pull request #38522 from ThakeeNathees/printing-empty-string-fixRémi Verschelde2020-05-071-1/+1
|\ | | | | Fix: printing empty string does nothing in editor output pannel
| * Fix: printing empty string does nothing in editor output pannelThakee Nathees2020-05-071-1/+1
| | | | | | | | Fix: #38490
* | Format remote printerr properly in script debugger outputPouleyKetchoupp2020-05-011-5/+28
|/
* Rename InputFilter back to InputRémi Verschelde2020-04-281-6/+6
| | | | | | | | | | | | | | | | It changed name as part of the DisplayServer and input refactoring in #37317, with the rationale that input no longer goes through the main loop, so the previous Input singleton now only does filtering. But the gains in consistency are quite limited in the renaming, and it breaks compatibility for all scripts and tutorials that access the Input singleton via the scripting language. A temporary option was suggested to keep the scripting singleton named `Input` even if its type is `InputFilter`, but that adds inconsistency and breaks C#. Fixes godotengine/godot-proposals#639. Fixes #37319. Fixes #37690.
* Merge pull request #37450 from SkyLucilfer/profilerBugRémi Verschelde2020-04-101-1/+1
|\ | | | | Fix profiler frame number stops updating when window is minimized
| * Fix profiler frame number stops updating when window is minimizedSkyJJ2020-03-311-1/+1
| |
* | Replace NULL with nullptrlupoDharkael2020-04-021-2/+2
|/
* Renaming of servers for coherency.Juan Linietsky2020-03-271-9/+9
| | | | | | | | | | VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
* Refactored input, goes all via windows now.Juan Linietsky2020-03-261-6/+6
| | | | Also renamed Input to InputFilter because all it does is filter events.
* Effective DisplayServer separation, rename X11 -> LinuxBSDJuan Linietsky2020-03-261-1/+2
|
* Refactored Input, create DisplayServer and DisplayServerX11Juan Linietsky2020-03-261-1/+1
|
* Fix various typosluz.paz2020-03-111-1/+1
| | | Found via `codespell`
* Refactor ScriptDebugger.Fabio Alessandrelli2020-03-081-0/+935
EngineDebugger is the new interface to access the debugger. It tries to be as agnostic as possible on the data that various subsystems can expose. It allows 2 types of interactions: - Profilers: A subsystem can register a profiler, assigning it a unique name. That name can be used to activate the profiler or add data to it. The registered profiler can be composed of up to 3 functions: - Toggle: called when the profiler is activated/deactivated. - Add: called whenever data is added to the debugger (via `EngineDebugger::profiler_add_frame_data`) - Tick: called every frame (during idle), receives frame times. - Captures: (Only relevant in remote debugger for now) A subsystem can register a capture, assigning it a unique name. When receiving a message, the remote debugger will check if it starts with `[prefix]:` and call the associated capture with name `prefix`. Port MultiplayerAPI, Servers, Scripts, Visual, Performance to the new profiler system. Port SceneDebugger and RemoteDebugger to the new capture system. The LocalDebugger also uses the new profiler system for scripts profiling.