Commit Graph

37 Commits

Author SHA1 Message Date
Maciej Mikołajek
4173dd810f
Documentation in the Suggestions Database (#1791) 2021-06-22 14:44:48 +02:00
Ara Adkins
57f1913f19
Fix a missing change in the LS protocol spec (#1807) 2021-06-21 10:46:19 +01:00
Ara Adkins
af4558a93c
Refactor the LS to support multiple content roots (#1800) 2021-06-16 11:00:42 +01:00
Ara Adkins
90c020d666
Implement byte-based file operations (#1795) 2021-06-11 14:48:28 +01:00
Dmitry Bushev
d67f7a2b31
Add HTML Documentation API (#1758)
Add support for the HTML documentation chunks
2021-06-01 15:43:22 +03:00
Ara Adkins
1661832c95
Update the FlatBuffers schemas (#1763) 2021-05-28 13:27:41 +01:00
Ara Adkins
a981e72fdf
Provide API access to the project name (#1759) 2021-05-27 16:13:52 +01:00
Ara Adkins
3890abe6fa
Update the protocol to support streaming files (#1757) 2021-05-26 15:08:41 +01:00
Dmitry Bushev
f34f8be895
Add evaluation for one-shot expressions (#1749) 2021-05-21 14:19:21 +01:00
Dmitry Bushev
d9e1a47460
Report Visualization Errors (#1671)
Add `executionContext/visualisationEvaluationFailed`
notification
2021-04-21 16:32:22 +03:00
Dmitry Bushev
96957b7b03
Sync Suggestions Database when Renaming the Project (#1647)
Changelog:
- feat: during the boot, prune outdated modules 
  from the suggestions database
- feat: when renaming the project, send updates 
  about changed records in the database
- refactor: remove deprecated 
  executionContext/expressionValuesComputed 
  notification
2021-04-06 14:23:12 +03:00
Ara Adkins
8e942b5fa0
Rank suggestions by self-type specificity (#1629) 2021-03-29 16:31:17 +01:00
Dmitry Bushev
b5e9895fa7
Initialize language server on client connection (#1535) 2021-03-04 16:59:05 +00:00
Dmitry Bushev
f0115587b0
Handle PanicSentinel in Interpreter (#1436)
PR adds the ability to handle runtime exceptions 
in the interpreter and continue the execution 
passing the PanicSentinel value.
2021-02-02 12:02:00 +03:00
Dmitry Bushev
2515721799
Add API for dataflow errors (#1422) 2021-01-25 14:41:20 +00:00
Dmitry Bushev
4770e72734
Resolve Expression Ids for Errors (#1405)
PR adds the new executionContext/expressionUpdates
API that replaces executionContext/expressionValueUpdates
notification, and in the future will be extended to support
the dataflow errors.
2021-01-21 17:10:21 +03:00
Ara Adkins
b5b4dfa155
Add support for profiling information in the protocol (#1407) 2021-01-19 10:41:39 +00:00
Radosław Waśko
9e1b49d245
Forking Language Server in the Project Manager (#1305) 2020-12-02 16:56:47 +01:00
Dmitry Bushev
07190a729c
Add search/import command (#1310)
Add `search/import` request returning the info
required for module import.
2020-11-26 18:44:35 +03:00
Dmitry Bushev
670cffb380
Fix Storing the Runtime Types (#1271)
A bunch of improvements to the suggestions
system. Suggestions are extracted to the tree data
structure. The tree allows producing better diffs
between the file versions. And better diffs reduce
the number of updates that are sent to the IDE
after a file change, and consequently fix the
issue when the runtime type got overwritten with
the compile-time type.
2020-11-10 14:50:37 +03:00
Dmitry Bushev
1feec8388d
Localize Interpreter Errors (#1212)
Add new `executionContext/executionStatus`
notification returning a list of diagnostic
messages containing localized (linked to the
location in the code) information about
compilation errors and warnings, as well as
runtime errors with stack traces.
2020-10-15 16:03:45 +03:00
Dmitry Bushev
205c4e0002
remove duplicate suggestion entry id (#1074)
Remove duplicate SuggestionEntryId type alias from
the Language Server docs.
2020-08-11 15:17:39 +03:00
Dmitry Bushev
467d13a9e7
Update Runtime Notifications API (#1055)
Co-authored-by: Ara Adkins <iamrecursion@users.noreply.github.com>
2020-08-04 12:31:56 +02:00
Dmitry Bushev
cd6858a01e
Revert expressionId removal from value update (#1043) 2020-07-30 10:26:14 +01:00
Dmitry Bushev
2f9e7f51af
Handle Rename Command Properly (#1041)
In the current workflow, at first, the default Unnamed project is
created, and the Suggestions database is populated with entries from the
Unnamed.* modules. When the user changes the name of the project, we
should update all modules in the Suggestion Database with the new
project name.

This PR implements module renaming in the Suggestions database and fixes
the initialization issues.

- add: search/invalidateSuggestionsDatabase JSON-RPC command that resets
  the corrupted Suggestions database
- update: SuggestionsHandler to rename the modules in the
  SuggestionsDatabase when the project is renamed
- fix: MainModule initialization
2020-07-29 14:51:00 +03:00
Dmitry Bushev
93c4453299
Update ExpressionValueUpdate Notification API (#1033)
ExpressionValueUpdate notification contains information about the
executed object. To have the full information about this object, IDE
needs the id of the corresponding suggestion. PR updates the
notification adding the suggestion id of the executed object.

- update: public API for ExpressionValueUpdate notification
- update: ContextEventsListener groups ExpressionValueUpdates and sends
  them in a batch
- update: ContextRegistry listens to the notifications from runtime and
  routes them to the corresponding listener.
- test: add ContextEventsListenerSpec
2020-07-28 23:24:04 +03:00
Ara Adkins
f5ffbe8fa7
Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00
Dmitry Bushev
239a5f18e9
doc: fix capability/acquire parameters (#1018) 2020-07-20 18:04:42 +03:00
Dmitry Bushev
30d136a141
Integration with the Searcher Database (#994) 2020-07-20 11:00:49 +03:00
Dmitry Bushev
6ba038c800
Implement Search Requests API (#953) 2020-07-06 16:55:21 +03:00
Łukasz Olczak
a8293eb3a0
Support for Project Renaming (#929) 2020-07-01 15:55:50 +02:00
Dmitry Bushev
8ecc786be6
Implement Suggestions Updates API (#930) 2020-06-26 19:52:42 +03:00
Łukasz Olczak
1f46a3f9a1
Introduce Threaded Executions to the Runtime Server Instrument (#807) 2020-06-16 13:16:07 +02:00
Dmitry Bushev
f5584b2000
Add Searcher Design Doc (#821) 2020-06-10 17:51:04 +03:00
Marcin Kostrzewa
8463162dfa Clarify Text Edits Application Order 2020-05-22 17:23:39 +02:00
Łukasz Olczak
b4e24c3c97
Input/Output Stream Redirection (#772) 2020-05-20 20:23:36 +02:00
Ara Adkins
d2f93488b3
Restructure the developer documentation (#751) 2020-05-15 11:41:26 +01:00