Gleb Balykov [Tue, 19 Jan 2021 09:19:21 +0000 (12:19 +0300)]
Add .NET 6 build support
Oleg Lekarev [Tue, 22 Dec 2020 07:34:53 +0000 (10:34 +0300)]
Fix build with .Net SDK 2.1
Kirill Frolov [Tue, 17 Nov 2020 12:53:33 +0000 (15:53 +0300)]
Another logger implementation.
This logger uses Tizen's logging functions on Tizen
and emulates these functions on regular Linux or Windows.
Kirill Frolov [Tue, 27 Oct 2020 13:25:47 +0000 (16:25 +0300)]
For debug builds -DDEBUG is added to compiler options.
This is required for dlogger to function properly
(some dlogger's functions disabled in non-debug builds).
Oleg Lekarev [Fri, 4 Dec 2020 13:02:26 +0000 (16:02 +0300)]
Bug with printing variables fixed - https://github.sec.samsung.net/dotnet/netcoredbg/issues/329
Mikhail Kurinnoi [Wed, 25 Nov 2020 14:31:17 +0000 (06:31 -0800)]
Refactor managed part.
Main changes:
1. All related to Eval managed code moved to separate source
managed/SymbolReader.cs => managed/Evaluation.cs
2. All not related to symbol reader or eval managed code moved to separate source
managed/SymbolReader.cs => managed/Utils.cs
3. Previously we have all related variables/classes/namespace names connected to SymbolReader and SOS, fixed now. Note, m_symbolReaderHandle is pointer to reader handle (GCHandle for managed object), so, we good with name here.
4. All Windows API related routine moved in WinAPI namespace, will be moved into platform related sources during platform sources refactoring.
João Silva [Wed, 21 Oct 2020 12:02:24 +0000 (13:02 +0100)]
Add "supportsSetVariable" capability to vscode protocol.
Mikhail Kurinnoi [Wed, 25 Nov 2020 10:17:54 +0000 (02:17 -0800)]
Add own project wide namespace.
Kirill Frolov [Fri, 30 Oct 2020 13:06:48 +0000 (16:06 +0300)]
This commit enables pretty-printers in gdb.
Oleg Lekarev [Thu, 26 Nov 2020 10:50:41 +0000 (13:50 +0300)]
Minor improvements to Automatic error messages generation from corerror.xml:
- Re-generate errormessage.cpp every time the project is built
- Enable to rewrite errormessage.cpp and errormessage.h if they already exist.
- Fix managed part project re-build on Windows (remove obj/project.assets.json before every build)
Mikhail Kurinnoi [Mon, 23 Nov 2020 14:20:56 +0000 (06:20 -0800)]
Fix build for new files locations.
Mikhail Kurinnoi [Tue, 17 Nov 2020 09:58:21 +0000 (01:58 -0800)]
Move files for proper places without any changes.
Oleg Lekarev [Wed, 18 Nov 2020 10:30:16 +0000 (13:30 +0300)]
error messages generation from corerror.xml
Kirill Frolov [Wed, 11 Nov 2020 17:35:46 +0000 (20:35 +0300)]
Passing complex objects by reference, but not by value.
This commit fixed multiple issues, when comples C++ objects
passed as arguments to functions (instead passing reference),
so every time object copy is created on the heap.
Kirill Frolov [Fri, 30 Oct 2020 21:51:30 +0000 (00:51 +0300)]
Fixed VSCodeProtocol::CommandLoop: added error handling
If any error, which cause exception, occurs during processing
and, especially, parsing of VSCode protocol command: netcoredbg
no crashes anymore, but creates error message and passes it to
VisualStudio.
Merge pull request #320 from k-frolov/m_evaluator
Fixed issue with m_debugger.m_evaluator
Kirill Frolov [Thu, 1 Oct 2020 12:04:03 +0000 (15:04 +0300)]
Fix a bug: no stop at Debugger.Break() call.
This commit fixes issue #264.
It is expected, if the program running under debuggers control, call to
System.Diagnostics.Debugger.Break() should stop the program (as if the
breakpoint is set).
Kirill Frolov [Tue, 24 Nov 2020 15:18:35 +0000 (18:18 +0300)]
Revert "Fix a bug: no stop at Debugger.Break() call."
This reverts commit
95e434f3842ba7250ab21a6bc996bdedc995f9d4.
Kirill Frolov [Mon, 23 Nov 2020 12:25:12 +0000 (15:25 +0300)]
Fixed build for Windows.
Kirill Frolov [Tue, 24 Nov 2020 15:16:54 +0000 (18:16 +0300)]
Revert "Fixed build for Windows."
This reverts commit
49a0048ebd9fd8758555652f996e8b56a6e7e9fc.
Kirill Frolov [Mon, 16 Nov 2020 15:34:45 +0000 (18:34 +0300)]
Fixed issue with m_debugger.m_evaluator
m_evaluator might be empty after calling pop().
Kirill Frolov [Thu, 1 Oct 2020 12:04:03 +0000 (15:04 +0300)]
Fix a bug: no stop at Debugger.Break() call.
This commit fixes issue #264.
It is expected, if the program running under debuggers control, call to
System.Diagnostics.Debugger.Break() should stop the program (as if the
breakpoint is set).
Kirill Frolov [Tue, 24 Nov 2020 15:18:35 +0000 (18:18 +0300)]
Revert "Fix a bug: no stop at Debugger.Break() call."
This reverts commit
95e434f3842ba7250ab21a6bc996bdedc995f9d4.
Kirill Frolov [Mon, 23 Nov 2020 12:25:12 +0000 (15:25 +0300)]
Fixed build for Windows.
Kirill Frolov [Tue, 24 Nov 2020 15:16:54 +0000 (18:16 +0300)]
Revert "Fixed build for Windows."
This reverts commit
49a0048ebd9fd8758555652f996e8b56a6e7e9fc.
Kirill Frolov [Thu, 1 Oct 2020 12:04:03 +0000 (15:04 +0300)]
Fix a bug: no stop at Debugger.Break() call.
This commit fixes issue #264.
It is expected, if the program running under debuggers control, call to
System.Diagnostics.Debugger.Break() should stop the program (as if the
breakpoint is set).
Kirill Frolov [Mon, 23 Nov 2020 12:25:12 +0000 (15:25 +0300)]
Fixed build for Windows.
Kirill Frolov [Fri, 30 Oct 2020 12:36:27 +0000 (15:36 +0300)]
Added a possibility to specify build type for GBS.
Build type can be specified by adding command line option:
--define "build_type Debug"
By default "Release" build type assumed.
Also compiler invocations now can be printed verbosely (add --define verbose).
Kirill Frolov [Mon, 16 Nov 2020 17:00:56 +0000 (20:00 +0300)]
Several changes related to ToRelease class.
First, this class renames "Release" method to "Free". The reason is to
avoid easy to make mistakes, when "Release" function of ToRelease class
called instead of Release function pointer to which stored in ToRelease
class.
Second, this change inhibits Clang analyzer few warnings.
Kirill Frolov [Fri, 30 Oct 2020 23:56:38 +0000 (02:56 +0300)]
Adding EmitExecEvent() function to interface.
This commit changes debugger interface and adds new function
EmitExecEvent which notifies VSCode protocol, that new
program is executed by the debugger.
This commit is needed to fix issue #272 (VisualStudio on Mac).
Kirill Frolov [Fri, 30 Oct 2020 21:52:07 +0000 (00:52 +0300)]
Make "cwd" parameter optional.
This commit fixes issue #272 (Visual Studio on Mac), when netcoredbg
crashes.
Kirill Frolov [Tue, 10 Nov 2020 00:08:10 +0000 (03:08 +0300)]
Added -DNOMINMAX globally on WIN32.
This fixes issues with std::numeric_limits<T>::max() and std::max().
Kirill Frolov [Tue, 3 Nov 2020 22:26:56 +0000 (01:26 +0300)]
Introducing FrameId, ThreadId and FrameLevel types.
This commit introduces three new data types:
* ThreadId -- represents the thread;
* FrameLevel -- represents frame number in the stack of some thread;
* FrameId -- represents combination of ThreadId and FrameLevel.
Basically all of these types are scalar types (numbers), but they are
represented with different types to avoid mixing of these types (in most
cases by mistake) with any other arithmetic types (i.e. you will be
unable to sum ThreadId, and you can use by mistake ThreadId in place
FrameId and vice versa). For these types only compare operations
available and predefined conversion operations. So in some sence these
types have strong typing.
FrameId carries 31-bit wide identifier (in range 0..INT_MAX) which is
valid only while program being debugged is stopped. Each time, when
program is run (via "Continue", "Step" and "Run" operations of the
debugger), all existing FrameId became invalid values. To avoid hard
to debug bugs, previously used FrameId values is not assigned again in
near future.
Visual Studio's protocol requires, that FrameId should have values in
range 0..INT_MAX. This commit satisfies this requirement and fixes bug
because of which Visual Studio fais on Mac: see issue #272
Kirill Frolov [Mon, 16 Nov 2020 15:34:45 +0000 (18:34 +0300)]
Fixed issue with m_debugger.m_evaluator
m_evaluator might be empty after calling pop().
Kirill Frolov [Thu, 1 Oct 2020 07:56:42 +0000 (10:56 +0300)]
[Build] fixed build with CoreClr > 3.x
Detailed changes description:
1) In CoreCLR's PAL macro was renamed: BIT64 => HOST_64BIT;
2) Directory layout has changed (in CoreCLR's sources);
3) Definition (not declaration) of IID_IUnknown isn't available from PAL
anymore: so need to link libuuid (unwanted dependency) or define
IID_IUnknown in source (as it was made).
Kirill Frolov [Mon, 16 Nov 2020 21:27:25 +0000 (00:27 +0300)]
Ignoring warning in third-party code (json).
Kirill Frolov [Fri, 13 Nov 2020 00:49:56 +0000 (03:49 +0300)]
Fixed bug: memory leak (minor).
Kirill Frolov [Wed, 11 Nov 2020 12:01:21 +0000 (15:01 +0300)]
This commit enables and fixes warnings for linux build
Removed -Wno-unused-variable and fixed warnings.
Removed -Wno-tautological-compare and -Wno-invalid-offsetof
Warnings turned off for microsoft's code (we can't change it).
Adding -Wnarrowing, removing -Wno-null-conversion.
Ignoring GCC pragmas with Visual Studio.
Also all compiler settings moved from CMakeLists.txt to
compileoptions.cmake.
TestRunner: detect netcoredbg process death (#308)
* TestRunner: detect netcoredbg process death
* fix #297
* fix Dispose LocalDebugger.Process on Ok termination
* fix run_tests.sh to kill Test process and another children
on netcoredbg/TestRunner death
* add timeout feature to run_tests.sh like PR#279
* Fix Xunit testrunner (weak)
* fix #297 part 2
** fix timeout at run_tests.sh
** fix behaviour of xunit on test's death
* add a test to manual-assisted test unexpected death of process chain of a test
Alexander Soldatov [Thu, 15 Oct 2020 12:09:08 +0000 (15:09 +0300)]
Create version file
Pavel Orekhov [Tue, 27 Oct 2020 13:38:41 +0000 (16:38 +0300)]
TestRunner: detect netcoredbg process death
* fix #297
* fix Dispose LocalDebugger.Process on Ok termination
* fix run_tests.sh to kill Test process and another children
on netcoredbg/TestRunner death
* add timeout feature to run_tests.sh like PR#279
Pavel Orekhov [Tue, 20 Oct 2020 14:32:44 +0000 (17:32 +0300)]
run_tests.*: fail test on compilation error
Run every test only if it's build is successfull.
Else count it as failed it with "build error" message.
Mikhail Kurinnoi [Wed, 28 Oct 2020 13:58:39 +0000 (06:58 -0700)]
Fix struct alignment (performance penalty).
Fix #284
Merge pull request #300 from m-kurinnoi/increase_handshake_timeout
Increase tests handshake timeout.
Mikhail Kurinnoi [Tue, 27 Oct 2020 13:47:20 +0000 (06:47 -0700)]
Care about cmake exit code during build by Travis CI.
Note, we can't use `set -e` here, since build may stop unexpectedly because of benign non-zero status in internal travis scripts (see https://github.com/travis-ci/docs-travis-ci-com/issues/1672).
Mikhail Kurinnoi [Mon, 26 Oct 2020 09:59:48 +0000 (02:59 -0700)]
Prevent std::cout flush triggered by read operation on std::cin.
Note, for MI and VSCode protocols we use explicit std::cout flush if needed,
CLI protocol don't use STL.
Fix #206
Mikhail Kurinnoi [Mon, 26 Oct 2020 14:47:00 +0000 (07:47 -0700)]
Increase tests handshake timeout.
Add BOM to sln file in order to prevent errors for not English name tests build on "dotnet build" command in Windows OS.
Mikhail Kurinnoi [Mon, 19 Oct 2020 15:34:59 +0000 (08:34 -0700)]
Fix Mac OS build.
Fix missing "d" shortcut handler
Mikhail Kurinnoi [Fri, 16 Oct 2020 10:45:22 +0000 (03:45 -0700)]
Fix CI configs.
Merge pull request #281 from o-lekarev/master
Error description strings added.
Mikhail Kurinnoi [Sat, 10 Oct 2020 17:30:25 +0000 (20:30 +0300)]
Fix mess with headers.
Oleg Lekarev [Fri, 9 Oct 2020 14:18:01 +0000 (17:18 +0300)]
Error description strings added. Bugfixes: commands step, next
caused an SIGSEGV if the debugee process was not started.
Alexander Soldatov [Wed, 7 Oct 2020 10:37:37 +0000 (13:37 +0300)]
Bump to 1.2.0-5 version
Mikhail Kurinnoi [Wed, 7 Oct 2020 09:41:02 +0000 (12:41 +0300)]
Fix static analyzer warnings.
Alexander Soldatov [Tue, 6 Oct 2020 15:41:34 +0000 (18:41 +0300)]
Bump to 1.2.0-3 version
Kirill Frolov [Tue, 6 Oct 2020 14:32:25 +0000 (17:32 +0300)]
Fixed bug: segfault on assignment of inexistent variable
This change is related to #244
Alexander Soldatov [Fri, 25 Sep 2020 15:11:53 +0000 (18:11 +0300)]
Bump to 1.2.0-1 version
Hyungju Lee [Thu, 24 Sep 2020 22:22:33 +0000 (07:22 +0900)]
Fix gbs build (String replace during cmake)
Change-Id: Ibc3563d119ccadd6e2e18d9b5a2458649130dd8e
[CLI] Fixed bug: 'p' command without arguments. (#249)
The issue #243: command "p" without arguments leads to segfault.
Kirill Frolov [Tue, 22 Sep 2020 12:12:45 +0000 (15:12 +0300)]
Fixed bug: printing variables of decimal type.
This commit fixes issue #244: decimal data type not printed.
Oleg Lekarev [Wed, 23 Sep 2020 09:54:28 +0000 (12:54 +0300)]
Bugfixes, std::queue replaced with std::list + std::list::iterator to improve performance & save machine resources.
Kirill Frolov [Wed, 23 Sep 2020 13:26:45 +0000 (16:26 +0300)]
Fix for issue #251 (quotes in git comments breaks build).
Mikhail Kurinnoi [Thu, 10 Sep 2020 10:57:51 +0000 (13:57 +0300)]
Fix gbs build.
Oleg Lekarev [Fri, 28 Aug 2020 08:23:48 +0000 (11:23 +0300)]
Print variables improvements for structures and arrays
Merge pull request #231 from o-lekarev/CLI
Print variables initial implementation.
Oleg Lekarev [Tue, 25 Aug 2020 10:21:26 +0000 (13:21 +0300)]
Print variables initial implementation.
Oleg Lekarev [Thu, 13 Aug 2020 15:59:49 +0000 (18:59 +0300)]
Minor modifications for Windows compatibility
Oleg Lekarev [Wed, 22 Jul 2020 14:56:32 +0000 (17:56 +0300)]
CLI Protocol initial version added. Linenoise-ng signal processing unblocked.
Oleg Lekarev [Wed, 8 Jul 2020 14:52:03 +0000 (17:52 +0300)]
Add linenoise library for gdb-like CLI (Command Line Interface)
Alexander Soldatov [Fri, 21 Aug 2020 15:10:54 +0000 (18:10 +0300)]
Bump to 1.1.0-49 version
Mikhail Kurinnoi [Tue, 18 Aug 2020 18:26:17 +0000 (21:26 +0300)]
Add VSCode test for breakpoint source file name and line resolve.
Mikhail Kurinnoi [Mon, 17 Aug 2020 22:49:10 +0000 (01:49 +0300)]
Fix VSCode protocol breakpoint event and response output.
Improve work with Windows OS.
Mikhail Kurinnoi [Mon, 17 Aug 2020 08:01:04 +0000 (11:01 +0300)]
Improve MI/GDB protocol SetBreakpoint() and SetFunctionBreakpoint().
Mikhail Kurinnoi [Fri, 14 Aug 2020 16:07:45 +0000 (19:07 +0300)]
Add MI/GDB test for breakpoint source file name and line resolve.
Mikhail Kurinnoi [Fri, 14 Aug 2020 14:43:08 +0000 (17:43 +0300)]
Fix MI/GDB breakpoints delete logic.
Mikhail Kurinnoi [Tue, 11 Aug 2020 13:40:25 +0000 (16:40 +0300)]
Add breakpoint source file name resolve with relative path.
Mikhail Kurinnoi [Mon, 10 Aug 2020 17:33:47 +0000 (20:33 +0300)]
Change MI/GDB protocol internal breakpoint routine.
Mikhail Kurinnoi [Mon, 10 Aug 2020 15:24:16 +0000 (18:24 +0300)]
Improve breakpoints source file and code line resolve.
Mikhail Kurinnoi [Mon, 10 Aug 2020 15:24:01 +0000 (18:24 +0300)]
Add resolve routine for source files and code lines.
Mikhail Kurinnoi [Mon, 10 Aug 2020 08:15:33 +0000 (11:15 +0300)]
Add StringToUpper() to SymbolReader.
Mikhail Kurinnoi [Fri, 7 Aug 2020 07:38:21 +0000 (10:38 +0300)]
Fix ResolveSequencePoint() file name comparation for not Windows OSes.
Merge pull request #223 from m-kurinnoi/add_more_eval_tests
Add MI/GDB and VSCode tests for non-English text.
Mikhail Kurinnoi [Mon, 3 Aug 2020 15:33:00 +0000 (18:33 +0300)]
Fix GetEntryPointTokenFromFile
in order to work with non-English file names on Windows.
Mikhail Kurinnoi [Mon, 3 Aug 2020 15:25:14 +0000 (18:25 +0300)]
Add MI/GDB and VSCode tests for non-English assembly and source name.
Mikhail Kurinnoi [Tue, 28 Jul 2020 17:12:39 +0000 (20:12 +0300)]
Add MI/GDB and VSCode tests for non-English var evaluation.
Add MI/GDB and VSCode tests for text (not defined variables).
Fix VSCode test framework code in order to work with non-English variables.
Merge pull request #212 from m-kurinnoi/fix_exit_code
Fix debuggee process exit code status.
Mikhail Kurinnoi [Thu, 30 Jul 2020 10:17:18 +0000 (13:17 +0300)]
Fix debuggee process exit code status.
Mikhail Kurinnoi [Tue, 30 Jun 2020 20:11:41 +0000 (23:11 +0300)]
Add MI/GDB and VSCode tests for exit code status.
Mikhail Kurinnoi [Mon, 6 Jul 2020 13:57:33 +0000 (16:57 +0300)]
Test suite TargetFramework version bump to 3.1
Mikhail Kurinnoi [Tue, 14 Jul 2020 10:21:40 +0000 (13:21 +0300)]
Fix VSCodeTestEnv.
Mikhail Kurinnoi [Tue, 7 Jul 2020 14:01:55 +0000 (17:01 +0300)]
Add gbs arm64 build support.
Passed ENV and CWD for VSCode protocol (#208)
Mikhail Kurinnoi [Tue, 30 Jul 2019 10:06:50 +0000 (13:06 +0300)]
Fix "step" behavior on line with breakpoint.
Fix #145
Mikhail Kurinnoi [Mon, 8 Jun 2020 11:40:37 +0000 (14:40 +0300)]
Fix declaration shadows warnings.
Merge pull request #204 from a-zhukov/selftest
TEST. Add extractor of VSCode commands
Alexander Soldatov [Tue, 26 May 2020 15:29:40 +0000 (18:29 +0300)]
Bump to 1.1.0-21 version
Merge pull request #160 from m-kurinnoi/fix_vscode_test_data_loss
Fix VSCode protocol tests data loss if debugger send more then 1024 bytes long data.
Merge pull request #170 from m-kurinnoi/fix_mi_tests
Fix GDB/MI protocol tests.
Mikhail Kurinnoi [Wed, 20 May 2020 10:42:59 +0000 (13:42 +0300)]
Add MI/GDB and VSCode tests for eval with exception.