Commit Graph

12 Commits

Author SHA1 Message Date
Akash Yadav a9195f0f53 build(build-logic): modularize :build-logic composite build 2024-02-19 11:45:48 +05:30
Akash Yadav 1eabe1c32b fix(editor): preserve selection after executing 'Organize imports' action (fixes #1598) 2024-01-22 23:08:19 +05:30
Akash Yadav ed24faaae3 fix(editor/treesiter): inline TSQueryCursor.safeExecQueryCursor API 2023-11-16 18:40:25 +05:30
Akash Yadav 42bbe6a39c fix(editor/treesitter): IOOB exception in TsAnalyzeWorker when deleting text 2023-10-27 22:10:07 +05:30
Akash Yadav 7923243b3b fix(editor/treesitter): reimplement TsAnalyzeManager for better thread safety and error handling 2023-10-23 21:27:30 +05:30
Akash Yadav 5db4f33721 fix: remove unused TSSynchronized 2023-10-22 23:02:15 +05:30
Akash Yadav 0a5a5400a5 fix: occasional crash in TsLooperThread when text is edited too frequently 2023-10-16 22:15:47 +05:30
Akash Yadav 088bdce6c6 fix: properly implement TSTree edition and query execution 2023-10-15 23:47:20 +05:30
Akash Yadav d5910c6fc0 fix(editor): various improvements related to tree sitter code analysis
- Integrate the 'language-treesitter' module from sora-editor into the IDE itself for better control and customization of the tree sitter analysis.

- Invalidate line span generator when tree is edited - This is required because TSTree instances are not thread-safe and the spans generator tries to query the tree after it is edited.
 This results in SEGV_MAPERR errors in native code because the TSNodes are invalidatd after TSTree.edit() calls and the cursor tries to query those invalidated nodes.

- Recycle and reuse TS* instances - When analyzing the source code using Tree Sitter, a huge number of objects are created and deleted. This results in an increased of times the garbage
 collector is invoked.
2023-10-15 17:55:11 +05:30
Akash Yadav 230ccfa536 fix(editor): rewrite IDEEditor in Kotlin with Coroutines 2023-09-30 15:08:28 +05:30
Akash Yadav fa8680e873 refactor: replace hardcoded package names in build scripts with BuildConfig property 2023-04-13 22:56:17 +05:30
Akash Yadav bc156a9cb6 fix(editor,lsp/java): avoid reflective access to IDEEditor 2023-01-19 08:44:09 +05:30