All notable changes to the Dead Code Analyzer project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Bump version to 1.1.6
- Bump version to 1.1.6
- Set default output format to txt and update docs
- Added parallel processing for faster analysis.
- Improved import handling and refactored code structure.
- Introduced PDF report output option with "Open in VS Code" functionality.
- fix for perfect score
- Improved parallel processing for faster analysis on large projects.
- added in ignore for .fvm .
- Enhanced error handling for ignored files.
- Fixed minor typos in documentation.
- All class types supported - mixins, enums, extensions, state classes, @pragma classes, typedefs
- Advanced usage pattern detection - internal/external/both usage patterns
- Enhanced reporting - the new detailed report format with categorized sections
- Improved accuracy - better reference counting and detection
- migrate
- function used fix
- fix class used issue
- improve the logic of the regex to find the usage of the class
- fix bug in the regex
- revart change and improve logic of usage find
- file naming changes to match the pub dev file naming structure.
- Updated
README.mdto reflect the current regex-based implementation of Dead Code Analyzer. - Clarified that the tool uses regex for reference counting.
- Added known limitation for constructor reference counting (e.g., classes like
Activemay show incorrectinternal references: 1). - Included instructions for using
--verboseto debug reference issues. - Added support for multiple projects and flavored
mainfunctions in usage examples and best practices. - Introduced a sample pie chart for visualizing unused elements breakdown.
- Updated example output to include
Active,StateFullClass, andmyFunctionfrom recent fixes. - Attempted fix for constructor reference counting in
usage_analyzer.dartby updatingconstructorDefRegexfor multi-line named parameters and adding a fallback regex in_filterNonCommentMatches.
- Fix the comment function not found and added test case for comment function handling
- Fix the class comment not found and added test case for class handling
- updated README.md
- Added support for excluding specific Dart SDK versions in analysis to avoid false positives with experimental features like macros.
- Improved error messages for dependency conflicts, providing clearer guidance on resolving
analyzerandmacrosissues. - Added
--versionflag to display the tool’s version in the CLI. - Fixed dependency conflict with
freezed >=2.5.3by updatinganalyzerto^6.9.0, ensuring compatibility withmacros >=0.1.3-main.0. - Updated
pubspec.yamlto require Dart SDK>=3.3.0 <4.0.0withenable-experiments: macros. - Improved documentation in
README.mdto clarify publishing status for Pub badges.
- Fixed Pub Version and Package Publisher badges in
README.mdby ensuring correct package name and version onpub.dev. - Added missing
LICENSEfile to repository, enabling License badge to display “BSD-3-Clause”. - Fixed typo in CLI help message for
--excludeoption description.
- Initial release of Dead Code Analyzer.
- Added core features:
- Detection of unused classes, functions, and variables in Dart and Flutter projects.
- Identification of unreachable code segments.
- Usage frequency tracking for code elements.
- Analysis of internal and external references.
- Comprehensive report generation with recommendations in text format.
- Interactive progress indicators during analysis.
- Support for custom exclusion patterns via
--excludeoption.
- Added command-line interface with options:
-p, --project-path: Specify project directory (default: current directory).-o, --output-dir: Set report output directory (default: Desktop).-v, --verbose: Show detailed output with usage locations.-e, --exclude: Comma-separated patterns to exclude (e.g., "test,example").--no-progress: Disable progress indicators.--only-unused: Show only unused elements in the report.-h, --help: Display help message.
- Added installation support via
pub.devor source code. - Added CI/CD integration example for GitHub Actions.
- Added documentation for usage, best practices, limitations, and contributing guidelines.
- Licensed under the BSD 3-Clause License.