218 Commits

Author SHA1 Message Date
Boulanger
c7383d2bb0 Use Ada-Xdiff library
For eng/ide/ada_language_server#1667
2025-09-01 12:19:00 +02:00
Anthony Leonardo Gracio
eddfb6fda9 Avoid printing textEdits for textDocument/formatting
This can cause a STORAGE_ERROR on huge files.

Add a test for this.

For eng/ide/ada_language_server#1701
2025-08-08 08:13:01 +00:00
Vadim Godunko
0c775ddd01 Use arrays to speedup execution. 2025-07-20 22:38:46 +04:00
Ronan Desplanques
32710f2bf7 Initialize file versions from didOpen argument
Before this patch, the language server initialized versions of all newly
opened file to 1. However, the language server protocol defines a
parameter for didOpen that says that the client gets to decide the
initial versions of opened files. One client, namely Helix 25.1, passes
an initial value of 0 which caused e.g. renaming a variable right after
opening a file to fail.

This patch makes the initial value of versions the one that's passed by
the client.
2025-02-21 17:16:50 +01:00
Anthony Leonardo Gracio
8343f97a74 Fix accessibilty check failures on Mac OS
Use proper named access types to avoid some
accessibility checks emitted by the Mac OS compiler
from Alire.

Closes eng/ide/ada_language_server#1573
2024-12-19 16:17:33 +00:00
Vadim Godunko
acfa3f6f05 Rewrite To_LSP_Column to compute LSP column index at the end
(cherry picked from commit 5e7c0b9e98)
2024-11-25 10:27:25 +00:00
Elie Richa
0dc1f41d8e Hard-reset to previous good state on edge branch
(cherry picked from commit 96ed81c350)
2024-11-25 10:27:25 +00:00
Vadim Godunko
9cf1dde888 Rewrite To_LSP_Column to compute LSP column index at the end 2024-11-20 15:16:09 +00:00
Vadim Godunko
900e45bd1d Revert "Merge branch 'topic/vadim/vss' into 'master'"
This reverts merge request !1799
2024-11-20 10:52:19 +00:00
Vadim Godunko
06e068b2ab Rewrite To_LSP_Column to compute LSP column index at the end. 2024-11-20 09:50:39 +00:00
automatic-merge
c8c2a652ac Merge remote branch 'origin/master' into edge 2024-11-19 00:55:54 +00:00
Elie Richa
c7677088de Fix message parsing bug to avoid crashing on unknown headers 2024-11-18 13:58:59 +00:00
Boulanger
34b956f262 Fix tests failures related to subprogram called on a null entity
Closes eng/ide/ada_language_server#1493
2024-11-07 15:55:10 +01:00
Maxim Reznik
76c8ebb700 Don't dump callHierarchy/incomingCalls response
to trace file to avoid stack overflow on a long response.

Fixes #1468
2024-10-30 12:04:21 +00:00
Vadim Godunko
ebc8db7b9c Reuse Hash function. 2024-07-26 15:34:51 +00:00
Anthony Leonardo Gracio
41c8b2c04e Log exception backtraces
Closes eng/ide/ada_language_server#1390
2024-07-18 14:59:31 +00:00
Maxim Reznik
ed0cdad473 Use Low priority as the default priority.
Use `Fence` priority for

* `didOpen`
* `didClose`
* `didChangeWorkspaceFolders`
* `exit`
* `initialize`

Before this patch the default priority was `Fence`.

Refs #1141
2024-07-03 07:35:39 +00:00
Maxim Reznik
1adf4cf352 Rename Sequential_Message_Handler to Default_Message_Handler
Refs #1141
2024-07-03 07:35:39 +00:00
Maxim Reznik
90cf413b34 Add Lowest job priority
for the indexing job. Change job scheduler to keep indexing jobs
while jobs with Fence priority are executing.

Fixes #1362
2024-06-17 17:24:31 +03:00
Maxim Reznik
66e84169f3 Catch exception in job execution. 2024-06-17 13:13:06 +03:00
Anthony Leonardo Gracio
a95742dacd Add with-clause for invisible completion items
We now append the right 'als-auto-import' command to
invisible completion items, when the 'insertWithClauses' setting
is enabled.

This allows client that support executing completionItem commands
to execute the attached command in order to add the missing with-clause,
appending the qualifier if not already specified.

Automatic tests for both cases (i.e: with and without an already specified
qualifier) have been added.

For eng/ide/ada_language_server#1159
2024-05-28 12:42:01 +00:00
Maxim Reznik
8946f7adb7 Restore lost exception handlers
in out-of-order message handler jobs.

Refs #1141
2024-04-30 17:06:18 +03:00
Maxim Reznik
9f8ababdce Change job scheduler to complete fence job
before creating a next job. It is to fix this scenario:
* didChage document has been executed and waits its completion
* the next request creates a job, job remebers AnalysisUnit
* this job for request triggers completion of didChange and
  reparse AnalysisUnit
* then the job is executed with raising Stale_Reference exception

After this patch, the request triggers completion before next
job is actually created, so it can't get previous version of AU.

Refs #1141
2024-04-25 13:42:47 +03:00
Maxim Reznik
7528dcc507 Add a base type for server request jobs
to keep request cancelation logic. Use it in hover and
references requests.

Refs #1141
2024-03-26 14:58:59 +00:00
Maxim Reznik
e39d917496 Replace Is_Done function with Status parameter
This approach requires explicit calculation of the execution status,
which reduces the likelihood of forgetting to set the status.

Refs #1141
2024-03-12 17:51:12 +02:00