dart-sdk/pkg/analysis_server_client
Danny Tuppeny 28e926f0fb [analyzer]/[analyzer_plugin] Support change descriptions on SourceEdit
Previously, we only had descriptions of changes on a SourceChange. In order to support annotated edits over LSP for "Fix All in Workspace" we need to be able to track descriptions on each change within a file so that if we're fixing multiple different lints with a single SourceFileEdit they can be annotated/grouped in the UI.

In order to avoid every fix providing a description, ChangeBuilder has a field that allows recording the current change description and all builders created from it will use that description when creating their changes. This allows the BulkFixProcessor to set the description on behalf of each fix producer ensuring they all get descriptions (which is done in a follow-up CL along with Fix All in Workspace functionality).

Change-Id: Ie1c508056898bd4000a5505cf59a1e6d35d28da0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356160
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-03-08 18:54:05 +00:00
..
example Migrate more of analysis_server_client 2021-04-02 23:36:52 +00:00
lib [analyzer]/[analyzer_plugin] Support change descriptions on SourceEdit 2024-03-08 18:54:05 +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.