Skip to main content

Changelog

⚠️ For Individuals version changelog, please visit pub.dev.

1.2.0: March Update

Updated dcm fix and unused code check commands, assist to extract a class to a new file, 22 new rules and more! 🚀
  • More rules supported by dcm fix 🔥:
    • avoid-border-all
    • avoid-duplicate-exports
    • avoid-explicit-type-declarations
    • avoid-late-keyword
    • avoid-redundant-else
    • avoid-self-assignment
    • avoid-unnecessary-conditionals
    • avoid-unused-parameters
    • binary-expression-operand-order
    • double-literal-format
    • newline-before-return
    • prefer-const-border-radius
    • prefer-declaring-const-constructor
    • prefer-iterable-of
    • prefer-return-await
    • proper-super-calls
    • unnecessary-trailing-comma
    • arguments-ordering
  • New dcm fix options:
    • --include-rules - allows you to add rules that are not listed in your config, but you want to apply their fixes as well
    • --exclude-rules - allows you to exclude rules listed in your config from fixes calculation
    • --only-rules - allows you to run calculate fixes only for the given list of rules
    • --dry-run - allows you to see the proposed changes without applying them
    • --apply-to - allows you to run fixes only for the listed files
  • Support for removing unused code via dcm fix: dcm fix now supports removing unused code via --type option.
  • Improved unused code check: Unused code now correctly handles complex cases with conditionally exported files.
  • Performance improvements: Improved rules and quick fixes calculation.
  • Deprecating anti-patterns: Anti-patterns long-parameter-list and long-method were removed, use corresponding rules avoid-long-parameter-list and avoid-long-functions instead.
  • Extended support for analysis_options.yaml: Rules that have an additional configuration are highlights with ⚙️ icon. New code actions to disable, configure, open rule documentation or change severity are now available.
  • Extract to a new file assist: New refactoring assist to extract classes to a new file. It also supports extracting state if a widget was selected.
  • New rules 🚀:
    Common:
    • avoid-long-parameter-list
    • avoid-long-functions
    • prefer-return-await
    • unnecessary-trailing-comma
    • avoid-duplicate-named-imports
    • avoid-shadowing
    Flutter:
    • proper-super-calls
    • add-copy-with
    Bloc:
    • avoid-cubits
    • avoid-bloc-public-methods
    • avoid-passing-bloc-to-bloc
    • prefer-multi-bloc-provider
    • prefer-correct-bloc-provider
    Equatable:
    • extend-equatable
    Pubspec:
    • prefer-publish-to-none
    • prefer-correct-package-name
    • prefer-semver-version
    • avoid-dependency-overrides
    • prefer-caret-version-syntax
    • avoid-any-version
    • prefer-correct-screenshots
    • banned-dependencies

1.1.0: February Update

Improved unused code, dcm fix and more! 🚀
  • Improved check unused code 🔥: the command now searches for all type of unused code.
  • Applying quick fixes with dcm fix 🎯: new command to apply quick fixes produced.
  • New command - Check Exports Completeness: Checks that an exported API exports all used types (even transitive).
  • New rules 🚀:
    • avoid-self-assignment
    • avoid-redundant-else
    • no-equal-switch-case
    • avoid-explicit-type-declaration
    • avoid-self-compare
    • avoid-nested-switches
    • avoid-similar-names
    • no-equal-conditions
    • avoid-collapsible-if
    • avoid-incomplete-copy-with
  • Reporting of unused "//ignore" comments: All ignore comments that do not affect any produced diagnostic are now reported as unused.
  • Analysis options changes are picked up after each save: No need to restart the analysis server anymore. All the changes to config are now picked up after the save and applied to the affected files!
  • Quick fixes 🔥:
    • quick fix for "list-all-equatable-fields".
    • quick fix for "avoid-redundant-async-on-load".
  • Updates from Individuals version: all updates up to 5.6.0

1.0.0: Teams Version Release

Initial release of Teams version, including VS Code extension and IntelliJ / Android Studio plugin releases.
  • New rules 🚀: avoid-unnecessary-nullable-return-type, avoid-unrelated-type-casts, format-test-name, prefer-declaring-const-constructor, prefer-provide-intl-description.
  • New command: dcm share-feedback to open the feedback form.
  • Quick fixes 🔥:
    • new quick fix "fix all in a file".
    • new quick fix "fix all of type".
    • new quick fix "ignore" and "ignore in file".
    • existing rules that now support quick fixes: - avoid-duplicate-exports - avoid-late-keyword - avoid-redundant-async - avoid-top-level-members-in-tests - avoid-unnecessary-type-assertions - avoid-unnecessary-type-casts - avoid-unrelated-type-assertions - avoid-unused-parameters - newline-before-return - no-equal-then-else - prefer-match-file-name - member-ordering.
  • avoid-late-keyword updates: new config options allow-initialized and ignored-types.
  • prefer-moving-to-variable updates: correctly handle prefixed enums and static instance fields, ignore method invocations in a variable declaration.
  • no-magic-number updates: ignore enum constant arguments.
  • VS Code Extension: you can read more about the VS Code extension here.
  • IntelliJ plugin: you can read more about the VS Code extension here.