analyzer: ^0.30.0 copied to clipboard
Static analyzer for Dart.
- Changed the API for creating BazelWorkspace. It should now be constructed using BazelWorkspace.find(). Note that this might return
nullin the event that the given path is not part of a BazelWorkspace.
- Added an AST structure to support asserts in constructor initializers (AssertInitializer). AstVisitor classes must now implement visitAssertInitializer().
- Changed the API for creating PartOfDirective. It now accepts a StringLiteral URI, to accommodate "part of" declarations with a URI string rather than a library name.
- Removed AST constructors. AST nodes should now be created using
astFactory, located in
- Corresponds with the analyzer/server in the
- Fixed PubSummaryManager linking when a listed package does not have the unlinked bundle.
- Added support for running the dev compiler in the browser.
- Support for references to operators in doc comments (#26929).
- Support for trailing commas in parameter and argument lists (#26647).
- Strong mode breaking change: can now infer generic type arguments from the constructor invocation arguments (#25220).
- (Internal) Corresponds with the analyzer/server in the
- Restore EmbedderUriResolver API.
- Ignore processing performance improvements.
- EmbedderUriResolver API updates.
- Added support for 'analysis_options.yaml' files as an alternative to '.analysis_options' files.
- Moved the public and private API's for the element model into their proper places.
- Added back support for auto-processing of plugins.
- Support for DEP 37 (Assert with optional message).
- Lexical support for DEP 40 (Interface libraries). This does not include any semantic checking to ensure that the implementation libraries are compatible with the interface library.
- Cleaned up the initialization of plugins. Clients are now required to initialize plugins, possibly using the utility method AnalysisEngine.processRequiredPlugins().
- Removed the old task model and code that supported it. None of the removed code was intended to be public API, but might be in use anyway.
- Removed previously deprecated API's (marked with the @deprecated annotation).
- Options processing API updated to accept untyped options maps (#25126).
- (Internal) Support for
_embedder.yamldiscovery and processing.
- Add code generation utilities for use in both analyzer and analysis server.
- (Internal) Introduced context configuration logic (
configureContext()extracted from server).
- (Internal) Options validation plugin API update.
- (Internal) Provisional options validation plugin API.
- (Internal) Plugin processing fixes.
- Fixes to address lint registry memory leaking.
AnalysisContextAPI for associating configuration data with contexts (
OptionsProcessorextension point API changed to pass associated
AnalysisContextinstance into the
- Provisional (internal) plugin manifest parsing.
- Plugin configuration
ErrorHandlertypedef API fix.
- Provisional (internal) support for plugin configuration via
- Extension point for WorkManagerFactory(s).
- Resolve enum documentation comments.
- Fix display of parameter lists in servers Element structure (issue 24194)
- Band-aid fix for issue #24191.
- Removed a warning about importing unnamed libraries
- Fix handling of empty URIs in
.packagesfiles (issue 24126)
- Fix line starts in multiline comments (issue 23919).
- Various small fixes to Windows path handling.
- Update LineInfo computation during incremental resolution.
- Make exclude list apply to contexts (issue 23941).
- Fix type propagation for asynchronous for-in statements.
- Fix ToStringVisitor for external functions (issue 23968).
- Fix sorting of compilation unit members.
- Add forwarding for DefaultFormalParameter metadata.
- Fix most implementations of UriResolver.restoreAbsolute.
- Disable dart2js hints by default.
- Support older SDKs (Dart 1.11).
- Add hook for listening to implicitly analyzed files
- Add a PathFilter and AnalysisOptionsProvider utility classes to aid clients in excluding files from analysis when directed to do so by an options file.
- API change:
UriResolver.resolveUri(..)now takes an optional
ResolutionCopier.visitAwaitExpressionto copy *Type fields.
- Fix highlight range for missing enum constant in switch (issue 23904).
- Fix analyzer's treatment of
ClassName?.staticMemberto match spec.
- Implement DEP 34 (less restricted mixins).
- Fix some implementations of
UriResolver.resolveUri(..)that did not properly handle the new
- Requires Dart SDK 1.12-dev or greater
- Enable null-aware operators (DEP 9) by default.
- Generic method support in the element model.
_sdkext(to play nicer with pub).
- Initial support for analyzing
- (Internal) code reorganization to address analysis warnings due to SDK reorg.
- First steps towards
- Commandline interface moved to dedicated
analyzer_clipackage. Files moved:
- Removed dependency on the
- Changes in the async/await support.