| ## 0.33.0 |
| * Support handling 'class C with M', with extends missing. |
| * Report ABSTRACT_SUPER_MEMBER_REFERENCE as an error. |
| * Further support and bugfixes for Dart 2.1-style mixin declarations. |
| * Fixes for int2double support. |
| * Performance improvements for analysis and summary generation. |
| * Allow "yield" as a label, and "operator" as a static method name (#33672, |
| #33673) |
| |
| ## 0.33.0-alpha.0 |
| * Switch to using the parser from front_end. |
| * Start implementing the new mixin syntax. |
| |
| ## 0.32.4 |
| * Updated SDK constraint to <3.0.0. |
| * Updated to be compatible with Dart 2 void usage semantics. |
| * Deprecate the `AnalysisOptions.strongMode` flag. This is now hard-coded to |
| always return true. |
| |
| ## 0.32.3 |
| * Pull fix in kernel package where non-executable util.dart was moved out of bin/. |
| |
| ## 0.32.2 |
| |
| * Improved const evaluation analysis (new errors for `const A(B())` if `B` is non-const). |
| * Parser recovery improvements. |
| |
| ## 0.32.1 |
| |
| * The Parser() class now by default will parse with optional new or const. This |
| affects many APIs, for instance, `analyzer.dart`'s `parseCompilationUnit()`. |
| * Add the ability to specify a pathContext when creating a ContextRoot (not part |
| of the officially supported API, but needed by some clients). |
| * AnalysisSession now exports resourceProvider. |
| * Function type parameters are now invariant. (#29014) |
| * New logic to find source files generated by package:build when that build |
| system is detected. |
| * Data stored by FileDataStore is now checked using CRC32. |
| * Add ability for the angular plugin to set ErrorVerifier.enclosingClass. |
| |
| ## 0.32.0 |
| |
| * Allow annotations on enum constants. |
| * Analyzer fully supports being run on the VM with --preview-dart-2. |
| * Fix heap usage regression by not storing bytes in the file cache. |
| * Add AnalysisSessionHelper.getTopLevelPropertyAccessor(). |
| * Don't infer types when there's an irreconcilable type mismatch (#32305) |
| * Many fasta parser improvements. |
| * Use @isTest and @isTestGroup to understand executable element as a |
| test/group. To use, add `@isTest` annotations (from package:meta) |
| to the methods in their package which define a test. |
| ```dart |
| @isTest |
| void myMagicTest(String name, FutureOr Function() body) { |
| test(name, body); |
| } |
| ``` |
| When subscribed to [notifications for outlines of a test file](https://htmlpreview.github.io/?https://github.com/dart-lang/sdk/blob/master/pkg/analysis_server/doc/api.html#notification_analysis.outline), |
| they will include elements for UNIT_TEST_GROUP and UNIT_TEST_TEST. |
| * Improve guess for type name identifier. (#32765) |
| * Fix LineInfo.getOffsetOfLineAfter(). |
| * Remove some flutter specific analysis code. |
| * Fix resolution tests when run locally. |
| |
| ## 0.31.2-alpha.2 |
| |
| * Refactoring to make element model logic sharable with |
| linker. (#32525, #32674) |
| * Gracefully handle an invalid packages file. (#32560) |
| * Fix silent inconsistency in top level inference. (#32394) |
| * Fix test to determine whether a library is in the SDK. (#32707) |
| * Fix for type inference from instance creation arguments. |
| * Make GenericFunctionTypeElementForLink implement |
| GenericFunctionTypeElementImpl (#32708) |
| * Check for missing required libraries dart:core and dart:async. (#32686) |
| * Add callable object support. (#32156, #32157, #32426) |
| * Avoid putting libraries of all analyzed units in the current |
| session. (too expensive) |
| * Deprecate the option to enable using a URI in a part-of directive. |
| * Support implicit call() invocation in top-level inference. (#32740) |
| * Don't emit errors for lint rule names. |
| * Allow empty flutter: sections in pubspec files. |
| * Remove the special casing of 'packages' files from the analyzer and analysis |
| server. |
| * Initial implementation of API to build analysis contexts (replacing |
| ContextLocator.locateContexts). |
| * Fix regression in Analyzer callable function support. (#32769) |
| * Several performance enhancements, including: |
| * Add a shared cache of FileState contents (making flutter repo analysis |
| ~12% faster). |
| * Replace SourceFactory.resolveUri() with resolveRelativeUri() in |
| resynthesizer. (10% faster flutter repo analysis) |
| * Optimize computing exported namespaces in FileState. |
| * Optimize computing exported namespaces in prelinker. (8% faster |
| flutter repo analysis) |
| * Add NodeLintRule and UnitLintRule that replace AstVisitor in lints. |
| (6% faster flutter repo analysis) |
| * Remove fuzzy arrow support from analyzer. (#31637) |
| * More fixes for running the analyzer with Dart 2. |
| * Add isXYZ accessors to ParameterElementForLink_VariableSetter. (#32896) |
| * Demote IMPORT_DUPLICATED_LIBRARY_NAMED to a warning. |
| * Deprecated/removed some unused classes and libraries from the public API. |
| * Instantiate bounds to bounds. |
| * Use package:path instead of AbsolutePathContext. |
| * Check that argument is assignable to parameter in call() (#27098) |
| * preview-dart-2 is now the default for the command line analyzer, also |
| implying strong. Use --no-strong and --no-preview-dart-2 to handle |
| Dart 1 code. |
| * Export SyntheticBeginToken and SyntheticToken from the analyzer for |
| angular_analyzer_plugin. |
| * Improve error messages for annotations involving undefined names (#27788) |
| * Add support for getting parse results synchronously. |
| * Change linter subscriptions from functions to AstVisitor(s). |
| |
| ## 0.31.2-alpha.1 |
| |
| * Don't expect type arguments for class type parameters of static methods. |
| (#32396) |
| * Beginnings of changes to make analyzer code --preview-dart-2 safe, though |
| this version is not vetted for that. |
| * Infer type arguments in constructor redirections (#30855) |
| * Report errors on "as void" and "is void". |
| * Fix instantiating typedefs to bounds (#32114) |
| * preview-dart-2 implies strong-mode now and other preview-dart-2 fixes. |
| * Store method invocation arguments in summaries when needed for inference (partial fix for #32394) |
| * Fix top-level inference and implicit creation (#32397) |
| * Do not hint when only a responsive asset exists (#32250) |
| * Do not hint when using a deprecated parameter in the defining function |
| (#32468) |
| * Fix parsing of super expressions (#32393) |
| * Disable conflicting generics test in the task model (#32421) |
| * Change how we find analysis roots (#31343, #31344) |
| * Fix problem with AST re-writing interacting poorly with inference (#32342) |
| * Disallow if a class inconsistently implements a generic interface. |
| * Infer void for operator[]= return in task mode for DDC (#32241) |
| * Finish and improve mixin type inference in the analyzer (#32146, #32353, #32372) |
| * Many enhancements to getElementDeclarations() (#29510, #32495) |
| * Remove hint when there's no return from a Future<void> and async method. |
| * Add a code range to ElementDeclaration (#29510) |
| * Many, many fasta parser changes and improvements. |
| * Add missing void annotation (#32161) |
| * Add more null-aware hints (#32239) |
| * Fix implicit new/const computation (#32221) |
| * Treat invocations on dynamic as unknown, except for return type of == (#32173) |
| * Fix crash in generic function type argument of unresolved class (#32162) |
| * Fix path formatting on windows (#32095) |
| * front_end implementation of mixin type inference (#31984) |
| * analysis_options no longer breaks some properties (#31345) |
| |
| ## 0.31.2-alpha.0 |
| |
| * front_end handling of callable classes (#32064) |
| * Improve fasta parser error reporting. |
| * Check for unresolved imports to improve handling of optional new/const (#32150). |
| * Changes to front_end handling of callable classes. |
| * Normalize Windows drive letters to uppercase for analysis (#32095, #32042, #28895). |
| * Relax void errors: no error assigning void to void variable. |
| * Keep unresolved import/export directives for task based analysis |
| (dart-lang/angular#801). |
| * Promote `TOP_LEVEL_CYCLE` to an error. |
| * Code cleanups. |
| |
| ## 0.31.1 |
| |
| * Update to reflect that `_InternalLinkedHashMap` is not a subtype of `HashMap` |
| in sdk 2.0.0-dev.22.0. |
| |
| ## 0.31.0+1 |
| |
| * Update SDK constraint to require Dart v2-dev release. |
| |
| ## 0.31.0 |
| |
| * **NOTE** This release was pulled from the package site due to an invalid SDK |
| constraint that was fixed in `0.31.0+1`. |
| |
| * A number of updates, including support for the new Function syntax. |
| |
| ## 0.30.0-alpha.0 |
| * Changed the API for creating BazelWorkspace. It should now be constructed using BazelWorkspace.find(). Note that this might return `null` in 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 `package:analyzer/dart/ast/standard_ast_factory.dart`. |
| |
| ## 0.29.0-alpha.0 |
| * Removed `Element.docRange`. |
| |
| ## 0.28.2-alpha.0 |
| * Corresponds with the analyzer/server in the `1.20.0-dev.1.0` SDK. |
| |
| ## 0.28.0-alpha.2 |
| * Fixed PubSummaryManager linking when a listed package does not have the unlinked bundle. |
| |
| ## 0.27.4-alpha.19 |
| * Added support for running the dev compiler in the browser. |
| |
| ## 0.27.4-alpha.18 |
| * Support for references to operators in doc comments (#26929). |
| |
| ## 0.27.4-alpha.17 |
| * 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). |
| |
| ## 0.27.4-alpha.16 |
| * (Internal) Corresponds with the analyzer/server in the `1.18.0-dev.4.0` SDK. |
| |
| ## 0.27.4-alpha.9 |
| * Restore EmbedderUriResolver API. |
| |
| ## 0.27.4-alpha.8 |
| * Ignore processing performance improvements. |
| * EmbedderUriResolver API updates. |
| |
| ## 0.27.4 |
| |
| * Added support for 'analysis_options.yaml' files as an alternative to '.analysis_options' files. |
| |
| ## 0.27.1 |
| * Moved the public and private API's for the element model into their proper places. |
| * Added back support for auto-processing of plugins. |
| |
| ## 0.27.0 |
| * 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). |
| |
| ## 0.26.4 |
| * Options processing API updated to accept untyped options maps (#25126). |
| |
| ## 0.26.3 |
| * (Internal) Support for `_embedder.yaml` discovery and processing. |
| |
| ## 0.26.2 |
| * Add code generation utilities for use in both analyzer and analysis server. |
| |
| ## 0.26.1+17 |
| * (Internal) Introduced context configuration logic (`configureContext()` extracted from server). |
| |
| ## 0.26.1+16 |
| * (Internal) Options validation plugin API update. |
| |
| ## 0.26.1+15 |
| * (Internal) Provisional options validation plugin API. |
| |
| ## 0.26.1+13 |
| * (Internal) Plugin processing fixes. |
| |
| ## 0.26.1+11 |
| * Fixes to address lint registry memory leaking. |
| |
| ## 0.26.1+10 |
| * New `AnalysisContext` API for associating configuration data with contexts |
| (`setConfigurationData()` and `getConfigurationData()`). |
| |
| ## 0.26.1+9 |
| * `OptionsProcessor` extension point API changed to pass associated |
| `AnalysisContext` instance into the `optionsProcessed` call-back. |
| |
| ## 0.26.1+6 |
| * Provisional (internal) plugin manifest parsing. |
| |
| ## 0.26.1+5 |
| * Plugin configuration `ErrorHandler` typedef API fix. |
| |
| ## 0.26.1+4 |
| * Provisional (internal) support for plugin configuration via `.analysis_options`. |
| |
| ## 0.26.1+2 |
| |
| * 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. |
| |
| ## 0.26.1+1 |
| |
| * Removed a warning about importing unnamed libraries |
| * Fix handling of empty URIs in `.packages` files (issue 24126) |
| |
| ## 0.26.1 |
| |
| * 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). |
| |
| ## 0.26.0 |
| |
| * 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 `actualUri`. |
| * Change `ResolutionCopier.visitAwaitExpression` to copy *Type fields. |
| * Fix highlight range for missing enum constant in switch (issue 23904). |
| * Fix analyzer's treatment of `ClassName?.staticMember` to match spec. |
| * Implement DEP 34 (less restricted mixins). |
| * Fix some implementations of `UriResolver.resolveUri(..)` that did not |
| properly handle the new `actualUri` argument. |
| |
| ## 0.25.2 |
| |
| * Requires Dart SDK 1.12-dev or greater |
| * Enable null-aware operators (DEP 9) by default. |
| * Generic method support in the element model. |
| |
| ## 0.25.2-alpha.1 |
| |
| * `dart:sdk` extension `.sdkext` changed to `_sdkext` (to play nicer with pub). |
| |
| ## 0.25.2-alpha.0 |
| |
| * Initial support for analyzing `dart:sdk` extensions from `.sdkext`. |
| |
| ## 0.25.1 |
| |
| * (Internal) code reorganization to address analysis warnings due to SDK reorg. |
| * First steps towards `.packages` support. |
| |
| ## 0.25.0 |
| |
| * Commandline interface moved to dedicated `analyzer_cli` package. Files moved: |
| * `bin/analyzer.dart` |
| * `lib/options.dart` |
| * `lib/src/analyzer_impl.dart` |
| * `lib/src/error_formatter.dart` |
| * Removed dependency on the `args` package. |
| |
| ## 0.22.1 |
| |
| * Changes in the async/await support. |
| |
| |
| ## 0.22.0 |
| |
| New API: |
| |
| * `Source.uri` added. |
| |
| Breaking changes: |
| |
| * `DartSdk.fromEncoding` replaced with `fromFileUri`. |
| * `Source.resolveRelative` replaced with `resolveRelativeUri`. |