dart-sdk/pkg/analysis_server_client
Danny Tuppeny c3d80286fe [analysis_server] Add a supportsUris client capability for legacy server to switch into URI mode
This adds support for the legacy server to switch to URIs using a client capability. In this mode, all "FilePaths" will be URI strings over the protocol (in both directions).

It also allows the server to send LSP notifications (wrapped inside an "lsp.notification" notification, matching how requests/responses work). Notifications are automatically enabled if the client uses any LSP methods or sends the new "supportsUris" capability.

Change-Id: I5d2b76e396862129c61de70d57397603c958a02d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/349120
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2024-02-01 22:19:00 +00:00
..
example Migrate more of analysis_server_client 2021-04-02 23:36:52 +00:00
lib [analysis_server] Add a supportsUris client capability for legacy server to switch into URI mode 2024-02-01 22:19:00 +00:00
test [anlaysis_server] Fix flaky verify_sorted test 2024-01-18 16:44:17 +00:00
analysis_options.yaml [pkg] remove duplicate config from the analysis options files 2023-11-14 00:37:53 +00:00
CHANGELOG.md [pkg/analysis_server_client] deprecate the package and rev the version 2022-11-07 17:01:02 +00:00
LICENSE Update LICENSE 2021-04-07 10:28:38 +00:00
OWNERS [infra] Add OWNERS to the Dart SDK 2022-02-14 14:06:34 +00:00
pubspec.yaml Update SDK constraints for SDK packages. 2023-03-09 19:52:47 +00:00
README.md [pkg/analysis_server_client] add 'publish_to: none' to the pubspec 2022-11-08 20:00:46 +00:00

package:analysis_server_client is a client wrapper over the Analysis Server.

Update: this package has been discontinued

This package has been discontinued and will not receive further updates.

People who need similar functionality could:

  • continue to use the last published version; it should continue to be able to talk to the analysis server for the foreseeable future
  • fork the package and maintain that fork (we don't expect that the analysis server protocol will evolve significantly)
  • see if their use case could instead be satisfied by talking to the analysis server over the LSP protocol (dart language-server --protocol=lsp)

We welcome feedback about this at #50262; that would also be a good place to discuss alternatives.

Overview

  • Instances of Server manage a connection to an analysis server process, and facilitate communication to and from the server.

  • The Protocol library provides constants and classes to build requests for the server and decode responses and notifications from the server.

Example

The example uses the Server to launch the analysis server, analyze all *.dart files in the specified directory, display the results, and shutdown the analysis server.

References

For more about the analysis server, see the Analysis Server page.