Commit Graph

1398 Commits

Author SHA1 Message Date
HuangYu 46d42f7f3e feat: fix bug from debug jump to line and running to line crashed
fix crashed from debug

Log: fix bug
Change-Id: I6ebd5cf90240b254444f87355709f982cf608667
2022-03-03 16:58:40 +08:00
Lu Zhen 2c20e14724 feat: Dap backend can be auto-launched
use process to launch cxxdbg

Log: support debug backend auto-launch
Change-Id: I10b5c0c55ab29a7718bcb108cd53fc3d422ef98d
2022-03-03 13:25:55 +08:00
Lu Zhen 16ef7d677a fix: fix the issue cannot debug
add debug parameter

Log: fix debug issue.
Change-Id: I78d5220e8fd5b2ac8739b6c5c51fb5a47f64ea52
2022-03-03 11:02:19 +08:00
xiaozaihu 5fbd9b97a6 feat: switch stacktrace, scopes, variables request from async to sync mode.
1. stacktrace request switch async to sync
2. scopes request switch async to sync
3. variable request switch async to sync.

Change-Id: Ibaf13c6b33ba6b53e657b2f910ad4c4e3ca629b5
2022-03-03 10:25:16 +08:00
Lu Zhen f6fd0eafcc feat: Add debug auto-launch function
get target path from builder,
used by debugger for launch debug.

Log: debug function can be auto-launched
Change-Id: Iee6666b8d6bde962a5294e2b4bc163b16d132913
2022-03-02 18:01:33 +08:00
HuangYu e0100ebf3f feat: change style add clangd sepc version check
1. Changed clangd version check error only first
2. Changed lsp error style from margin
3. Add editor watch widget in main frame
4. Add dpf event from clean debug point and running

Log: Changed style
Change-Id: I6221348aaeb4ceea5b1486bfeaf661276667fb04
2022-03-02 09:47:00 +08:00
Lu Zhen 40f94a4a44 fix: resolve dap backend multi-issues.
fix the crash code;
add lock to keep synchronize, make the logic run in order.

Log: fix backend bug
Change-Id: Ic26f3eae40b1907498ac4d2a12f8c4fdce97080e
2022-03-01 10:21:32 +08:00
xiaozaihu da60b53f73 feat: add stackTrace, Scopes and Variables request handler
1. extend debugmanager to support more commands:
   pause, return, reverse, breakpoints, and so on.
2. extend debugmanager to work with library loaded event
3. add stackeTrace, Scopes and Variabes request handler.
4. add debug print information.

Change-Id: I8497a2a54aa2a2febfdf924c13b6c36006d6ab4e
2022-02-28 13:08:21 +08:00
HuangYu 051f374e27 feat: change c cmake language support file
1. Add strong type syntax setting definition.
2. Changed lsp build structure.
3. Changed codeeditor plugin file tree
4. Add file save operation
5. Add debug point && running point offsize

Change-Id: If0df72ea710f31b4fcde534ebe30c88147b05607
2022-02-28 11:42:20 +08:00
Lu Zhen 72b98e798b chore: re-write dap backend
Add dapsession to wrap dap protocol;
breakdown the code in main function;
Process multi-threads issue.

Log: re-write dap backend
Change-Id: Ied1b3d327df32fffb4438f30a5529ed36d071762
2022-02-25 16:55:16 +08:00
Lu Zhen 44be519ca4 chore: refactor debugger plugin
Wrap debug funtion in debugger class;
emit signal from event receiver to debugger;
menu action can triggered asynchornize;
change output message color.

Log: refactor debugger plugin
Change-Id: I22f3962ef998608da708f1902f5a8664c75253b5
2022-02-25 10:01:07 +08:00
Lu Zhen a3f35e2248 feat: Add exception event process logic
Receive exception event from backend,and
show a dialog to display the message.

Log: exception event can be processed.
Change-Id: Ie41ce02c5d4ceef01ce3d5a6531cf9879685fc62
2022-02-22 20:10:38 +08:00
Lu Zhen db8cca29be feat: Add breakpoint pane in debugger plugin
1.Add shortcut for actions.
2.Get breakpoint from editor and display at bottom window.

Log: 添加断点面板
Change-Id: I6ca8e6e4d704ebea2fb7eddd45996431e6ec9e4c
2022-02-17 13:06:22 +08:00
HuangYu 5c11c3477d feat: error message
1. to changed callback thread read json lop from lsp client
2. add error message from line has error
3. changed hover wait time from 0
4. defintions request
5. optimize style setting and code structure
6. symbol light from words in scinitlla document

Log: new operation
Change-Id: I90d1f57a173b029cf73b6ac72330283a099b9441
2022-02-15 17:35:58 +08:00
xiaozaihu 6e96a0b6bd feat: c/c++ dap server can control gdb debugger and debuggee
1. dap server can read gdb response via stdout channel
2. dap server can launch/restart/detach gdb process
3. dap server can control debuggee running with method:
     stepIn, stepOut, stepOver(Next), Continue
4. dap server can set breakpoint(line breakpoint and function breakpoint)

Change-Id: I10403512851b35f2efbb2e56ea508352ebaeef08
2022-02-15 16:48:23 +08:00
XiaoZaihu ff973fb3ec feat: add DAP(Debug Adapter Protocol) Spec
1. add DAP Spec markdown doc

Log: add DAP(Debug Adapter Protocol) Spec
Change-Id: If62e0d7f2b05331ac0bd99a8d19ac252a4f41393
2022-02-14 10:36:51 +08:00
xiaozaihu bac945dd9e feat: add c/cpp dap debugger adater server.
1. add tcp support
2. add gdb backend support
3. support stepped control(stepin, stepout, stepover)
4. support set breakpoints
Change-Id: If2f22359e668fe1e5683add7ed4651e89406d709

Change-Id: I7ae6bdfa0ec425582163ebeb1d5dbcabb8bcc98c
2022-02-11 19:15:15 +08:00
HuangYu fc43b3f30b feat: workspace build complie_command.json from clang support
1. all common sub-module added to common/common.h
2. cmake configure clangd index database to workspace plugin
3. readyread signal emited lauch thread process
4. time for read data from thread use mutex lock
5. add workspace and other can use widget progress statusbar
6. debug point running to line jump and scroll to line

Log: new operation
Change-Id: I5d8d8bba84092f859832e479b1beaee6da9762c0
2022-01-27 19:03:56 +08:00
Lu Zhen f974420bab feat: Add stack information interface
get stackframe info from dap server and
display it on UI.

Log: 添加堆栈显示界面
Change-Id: Ibfb4fb7fa6fa0afed41ffe467786adfaa830ce3b
2022-01-27 09:49:49 +08:00
HuangYu 09e8008a79 feat: common library program source compose mode support
program source compose support.

Log: new operation
Change-Id: I96aaccb285b4099c496aa4184f8a1889d574dcb1
2022-01-24 10:31:13 +08:00
Lu Zhen 4897e3e92a feat: add stackframe
1.get stackframe
2.get variable

Log: 添加堆栈信息
Change-Id: Iee867d5adfb09e10dd1570e274e987404c119f27
2022-01-21 11:26:06 +08:00
HuangYu c656072c52 feat: inotify desotry lock from thread wait
fix locked never wait use inotify sync

Log: fix bug
Change-Id: Ib3a79b4705e1fc5e649b076818c41abd3025fb3d
2022-01-20 13:17:55 +08:00
HuangYu 6a4a8ca7e6 feat: sort plugin depends error
fix error from plugin sort

Log: fix bug
Change-Id: I9a989f8a44f7057b04e5ecd5ae4f2ee3d3f986e0
2022-01-19 12:02:57 +08:00
HuangYu 03f4861fe3 feat: add toolchecker/workspace plugin
1.tools checker operation plugin, support clangd or more tool version check and net-request from network
2.code project workspace operation plugin, support workspace;

Log: new plugin
Change-Id: I2303036a40e71e5da0f6b29a2121957d274cbc54
2022-01-18 11:45:19 +08:00
Lu Zhen 73a4e2464f feat: dap client add UI
Receive and handle UI events;
Trigger interface operations

Log: 添加dap界面操作
Change-Id: I77b88b6147f7d67ffc0ef687783305ce5475a8a8
2022-01-17 11:56:08 +08:00
HuangYu 0042ab247a feat: call polkit
add module polkit from common

Log: new module
Change-Id: I758c97039b58aac704512500b4cf6beff5638e60
2022-01-13 18:45:08 +08:00
HuangYu f7cc284287 feat: debug running to line operation
debug running to line(jump) operation

Log: new operation
Change-Id: I21a046831ba46f90d9b778ea537bb95025ac3109
2022-01-13 14:59:07 +08:00
HuangYu d80603af33 feat: code editor style/completion/hover support
1.add scintilla style and lsp server token style support
2.code edit completion C++ lsp
3.words hover message

Log: new options
Change-Id: Ia074d45a438344dcd75f5f52087c273ba8fb2963
2022-01-13 11:01:13 +08:00
Lu 4a563f4b20 chore: Add event handlers
Add event handlers, let the client to have complete communication capabilities.

Log: 添加事件处理
Change-Id: I8e2342cc754408958b10c513cbe084af5df6e1e0
2022-01-12 19:29:15 +08:00
Lu Zhen d3a465307f chore: Optimize complile output
remove extra blank lines.
set different text color according to output type.

Log: 优化编译输出
Change-Id: I0f600b3737e96f5853ce17d0385d60fc35d463c3
2022-01-06 10:36:09 +08:00
Lu Zhen 67e97b90d9 chore: Upload cppdap source code
Upload cppdap source code
path:3rdparty/cppdap

Log: 上传cppdap源码
Change-Id: Ic55875054c78209c8e9ce7f03f3a55e24aa73594
2022-01-05 16:15:00 +08:00
Lu Zhen 019b1757ce chore: Re-wrap DAP debugging protocol
Debug through the third-party backend to re-wrap the basic protocol.

Log: 调试协议优化
Change-Id: I0a83957005f4e269c97cc21774a3b9cf4edb9309
2022-01-05 15:20:13 +08:00
HuangYu 64540a4d78 docs: add file head title
add all file head title, and changed year to 2022

Log: change file head title
Change-Id: Ic3b264b50cb1d5ca4dd8a23560cb6227f2dfd89f
2021-12-31 16:26:14 +08:00
HuangYu 5c8584da64 feat: create inotify, add defualt token words
1. file watcher use poll
2. add token set to support file

Log: create new module
Change-Id: I991c3698b0ed111038b3021825eea29f230a4de0
2021-12-31 13:33:25 +08:00
HuangYu cd94e95f54 feat: add language support from config file
1.define server to language.support file
2.changed resource file languageSupport.json to language.support and so on.

Log: changed language support file
Change-Id: I33229646c4c62e125bf9057b5ced1f5049f58184
2021-12-29 15:34:39 +08:00
Lu Zhen fb18f0784c feat: Implement part of the basic DAP protocol
The cppdap library is introduced, and some major
protocols are implemented, including start, step, etc.
joint debugging will be done in Follow-up.

Log: 实现部分DAP协议
Change-Id: I6b95bdf4c5457930d4b1de9e601d810def1d3ad2
2021-12-27 18:22:03 +08:00
HuangYu e1a48bb819 feat: add Syntax highlighting from scintilla default words token
1.load lexilla shared library module to scintilla
2.setting color to scintilla style
3.update scintilla version to 5.1.5 and lexilla to 5.1.4

Log: editor style created
Change-Id: I68f9eb03e77d454f855fb774c1fa9f9a346a5ef0
2021-12-27 17:04:02 +08:00
HuangYu 91b0f4d73b feat: lsp publishDiagnostics event
add edit style from lsp server

Log: editor style
Change-Id: I9c6c9c61f6a62538c6be1cc07de47444ca35571f
2021-12-27 14:04:25 +08:00
ut004236 2b5aaeac8e feat: 添加ninja构建支持,修该工具链扫描脚本和cmake构建工具
添加ninja构建支持.修改工具链扫描脚本和cmake构建工具

Log: 添加ninja构建支持
Change-Id: Ia83f1a141a6cc7f6ec9907753a78e4225ee2ebc0
2021-12-27 12:56:28 +08:00
HuangYu 4e02d198ec feat: lsp protocol
add protocol head file.
but test all function, haven't working from request result: didOpen\didClose\didChange

Log: add protocol
Change-Id: I398eca9f590b63197f033f411f59584bb6217a67
2021-12-20 21:40:54 +08:00
HuangYu 8ae2c3a062 feat: debug point option to codeeditor
1.set file line number and debug point flag
2.set drak theme, blue border from editor widget

Log: new option
Change-Id: Ic449773a27f0d7723fd020be6229e2b6bf68e627
2021-12-16 19:35:37 +08:00
Lu Zhen 5d492c21a1 chore: optimization for build&debug plugins
optimize signals and events for build&debug plugins, and do some supplement.

Log: 优化插件逻辑
Change-Id: I2d74930e2ceb19e8a1c38310d25aaa91c9c0f559
2021-12-16 11:36:50 +08:00
Lu Zhen 077cdd9ae1 feat: Add debugger framework.
Create some base classes for debugger module.

Log: 添加调试框架
Change-Id: I52180415620840817a708112c7b26aa8f7958e89
2021-12-15 18:09:37 +08:00
HuangYu 82d950db23 feat: 添加runtime界面与recent测试界面
实现抽屉组件在common库中

Log: 界面完善
Change-Id: I5a0a436f8d6e43d49f4336ff99037aeedf8e0e03
2021-12-14 10:14:40 +08:00
HuangYu 0124306bab feat: 创建公有文件用于获取标定路径
创建公有文件用于获取标定路径

Log: 公有库构造
Change-Id: Ifa37147849ebe82b0f1cd9f57ce525ff66039a86
2021-12-09 19:31:34 +08:00
toberyan 9b314460a8 merge dev branch to master
Change-Id: I1b17496cbb8c8122a1b82ebcded55181230f7d9e
2021-12-09 13:52:36 +08:00
toberyan 3be5161520 init master branch
Change-Id: I677a580b363229f93d95b32ca0b91100da2000c8
2021-12-09 13:49:15 +08:00
gerritadmin 28d8fc2950 'Init commit' 2021-12-09 09:48:15 +08:00