flutterfy 1.1.1+1727741864
flutterfy: ^1.1.1+1727741864 copied to clipboard
A powerful command-line tool for Flutter and Dart projects to automatically manage semantic version updates in pubspec.yaml files. Supports patch, minor, and major version increments with intelligent [...]
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.1.1+1727741864 - 2025-08-11 #
Added #
- ๐ pub.dev Package Support: Full restructure for pub.dev distribution
- ๐ฆ Global Installation: Install globally with
dart pub global activate flutterfy - ๐ง Programmatic API: Use Flutterfy functions directly in your Dart code
- ๐ Comprehensive Examples: Added example/ directory with usage demonstrations
- ๐ท๏ธ Better Argument Parsing: Improved CLI with
--build=NUMBERsyntax - ๐ฏ Enhanced Documentation: Professional README with badges, examples, and guides
- ๐งช Test Framework: Added test structure for better reliability
- ๐ Cross-Platform Support: Explicit support for all major platforms
- ๐ Rich Metadata: Added topics, funding, and repository information
Improved #
- ๐ก๏ธ Error Handling: More descriptive error messages with emojis
- ๐ป CLI Interface: Cleaner help messages and better UX
- ๐ Version Detection: More robust regex patterns for version parsing
- ๐ Code Documentation: Added comprehensive inline documentation
- ๐จ Output Formatting: Better visual feedback with success/error indicators
Changed #
- ๐๏ธ Project Structure: Reorganized to follow pub.dev standards
- Main logic moved to
lib/src/version_updater.dart - CLI executable in
bin/flutterfy.dart - Public API exported from
lib/flutterfy.dart
- Main logic moved to
- ๐ Dependencies: Added useful packages (args, yaml, path, io)
- ๐ฏ Targeting: Updated SDK constraints to
>=3.0.0 <4.0.0
Fixed #
- ๐ Build Number Handling: Fixed edge cases with custom build numbers
- ๐ Version Transitions: Better handling of versions without build numbers
- ๐ File Encoding: Improved file reading with proper error handling
1.0.1+1727741864 - 2024-09-30 #
1.0.0 - 2024-09-30 #
Added #
- ๐ Initial Release: First working version of Flutterfy
- ๐ Version Management: Support for major, minor, and patch version increments
- ๐จ CLI Interface: Command-line functionality for version updates
- ๐ก๏ธ Error Handling: Basic error handling for missing files and invalid versions
- ๐ Build Numbers: Support for build number generation and custom values
- ๐ฏ Semantic Versioning: Full compliance with semantic versioning standards
Features #
- Update versions with simple commands:
major,minor,patch - Automatic build number generation using timestamps
- Custom build number support
- Validation of pubspec.yaml format and structure
- Cross-platform compatibility (Windows, macOS, Linux)
Notes #
- Ensure that the
pubspec.yamlfile has the correct format (e.g.,version: 1.0.0+1) for the functionality to work properly - Recommended to add
+1to the version if you receive the error "version not found in pubspec.yaml" - Initial version focused on core functionality and reliability
๐ Upcoming Features (Roadmap) #
1.2.0 (Planned) #
- ๐จ Interactive CLI with prompts and confirmations
- ๐ Version history tracking and rollback capabilities
- ๐ Git tag automation integration
- ๐ Web dashboard for team version management
- ๐ฑ Flutter plugin for IDE integration
1.3.0 (Future) #
- ๐ค AI-powered version suggestions based on commit messages
- ๐ Analytics and version usage insights
- ๐ Advanced validation rules and policies
- ๐ Multi-project workspace support
- ๐ฏ Custom version patterns and formats
๐ Migration Guide #
From 1.0.x to 1.1.x #
No breaking changes! Simply update your installation method:
Old way:
dart run bin/flutterfy.dart patch
New way (recommended):
dart pub global activate flutterfy
flutterfy patch
Programmatic Usage (New in 1.1.0) #
import 'package:flutterfy/flutterfy.dart';
// Now you can use Flutterfy in your Dart code
updateVersion('patch', null);
updateVersion('minor', '42');
๐ค Contributing #
We follow Conventional Commits for our changelog generation.
Commit Types #
feat:- New featuresfix:- Bug fixesdocs:- Documentation changesstyle:- Code style changesrefactor:- Code refactoringtest:- Adding testschore:- Maintenance tasks
Example #
git commit -m "feat: add interactive CLI prompts"
git commit -m "fix: resolve build number parsing issue"
git commit -m "docs: update installation instructions"