print_remover
A simple and fast tool to remove all print() and debugPrint() statements from your Dart/Flutter codebase, making cleanup before release effortless.
Features
- Removes
print()anddebugPrint()statements from all.dartfiles - Handles nested function calls like
print(someFunc()) - Skips print statements inside comments (
//,/*,*) - Supports custom directory paths (not just
lib) - Dry-run mode to preview changes before applying
- Verbose mode to see each removed statement
- Summary report of total removals
Installation
Add print_remover to your dev_dependencies in pubspec.yaml:
dev_dependencies:
print_remover: ^1.1.0
Then fetch dependencies:
dart pub get
Usage
Basic usage
Remove all print statements from the lib directory:
dart run print_remover
Preview changes (dry-run)
See what would be removed without modifying any files:
dart run print_remover --dry-run
Scan a custom directory
Scan a directory other than lib:
dart run print_remover --path src
dart run print_remover -p test
Verbose output
See each print statement as it is removed:
dart run print_remover --verbose
Combine options
dart run print_remover --path lib --dry-run --verbose
All options
| Option | Short | Description | Default |
|---|---|---|---|
--path |
-p |
Directory to scan for Dart files | lib |
--dry-run |
-d |
Preview removals without modifying files | off |
--verbose |
-v |
Show each print statement being removed | off |
--help |
-h |
Display help information | - |
Programmatic usage
You can also use PrintRemover as a library in your own Dart code:
import 'package:print_remover/print_remover.dart';
void main() async {
final remover = PrintRemover(
path: 'lib',
dryRun: true,
verbose: true,
);
final count = await remover.start();
print('Found $count print statements');
}
What gets removed
// These WILL be removed:
print('Hello World');
print(someVariable);
print(someFunction());
debugPrint('Debug info');
print('Value: ${obj.property}');
// These will NOT be removed (inside comments):
// print('commented out');
/* print('block comment'); */
/// print('doc comment');
Tips
- Always use
--dry-runfirst to preview what will be removed - Use version control (git) so you can revert if needed
- Run this before building your release version
Meta
Created and maintained by Zakria Khan.
Distributed under the MIT License.
Libraries
- print_remover
- A tool to remove all
print()anddebugPrint()statements from Dart files.