This package provides testing utilities related to the [analyzer][] and
[analysis_server_plugin][] packages.

## Support

Post issues and feature requests at https://github.com/dart-lang/sdk/issues.
These will be triaged according to the [analyzer triage priorities][triage].

Questions and discussions are welcome at the
[#hackers-analyzer Discord channel][discord channel].

## License

See the [LICENSE] file.

[analyzer]: https://pub.dev/packages/analyzer
[analysis_server_plugin]: https://pub.dev/packages/analysis_server_plugin
[discord channel]: https://discord.com/channels/608014603317936148/1171510601655275612
[LICENSE]: https://github.com/dart-lang/sdk/blob/main/pkg/analyzer/LICENSE
[triage]: https://github.com/dart-lang/sdk/blob/main/pkg/analyzer/TRIAGE.md
