dartdosh 0.2.4 copy "dartdosh: ^0.2.4" to clipboard
dartdosh: ^0.2.4 copied to clipboard

A powerful Flutter build CLI tool with automatic version management, smart file naming, and personalized experience

0.2.4 #

Features #

  • 🎯 Optional Environment: Environment flags are now optional - run plain Flutter commands without flavors
  • πŸ”§ Flexible Builds: Use dartdosh build apk for simple builds without version management
  • πŸ“¦ Smart Behavior: Version increment and file renaming only happen when environment is specified

Changes #

  • Environment parameter is now nullable in CLI and BuildManager
  • When no environment specified, runs plain flutter build <target> command
  • Build number increment only happens for flavor builds (when environment is specified)
  • File renaming/moving only occurs for flavor builds
  • Default environment display shows "default" in logs when no environment provided

Examples #

# With environment (flavor build) - increments version, renames files
dartdosh build apk --production
dartdosh build apk -p

# Without environment (plain Flutter build) - no version management
dartdosh build apk
dartdosh build ipa --release

0.2.3 #

Features #

  • ⚠️ Language Validation: Unsupported languages now show warning and fallback to English
  • πŸ“š Comprehensive Documentation: Updated README with detailed language support, flag variants, and examples
  • 🌍 Language Configuration Guide: Clear documentation on how to set and use language preferences

Changes #

  • Added language validation in Logger.setLanguage() with user-friendly warning
  • Unsupported languages automatically fallback to English with informative message
  • Updated README with multi-language examples in Uzbek and English
  • Documented all environment flag variants (-p, -prod, -d, -dev, -s)
  • Added language support notes and behavior documentation

Documentation #

  • Added multi-language support section with examples
  • Documented all short flag variants for environments
  • Added language fallback behavior explanation
  • Improved configuration examples with language field
  • Added comprehensive feature descriptions

0.2.2 #

Features #

  • 🌐 Localized Progress Bar: Progress bar tasks now translate according to selected language
  • πŸ“Š Multi-Language Build Stages: All build stages (Gradle, Dependencies, Compiling, etc.) display in user's language

Changes #

  • Added Logger.getProgressTask() static method for progress task translations
  • Created _progressTasks map with translations for all build stages
  • Updated _handleProcessOutput() to use localized progress messages
  • Progress stages now support Uzbek, English, and Russian

Technical #

  • New progress task keys: starting, gradle, dependencies_downloading, dependencies_ready, compiling, bundling, assembling, signing, finishing, ready
  • BuildManager now calls Logger.getProgressTask() for all stage updates

0.2.1 #

Features #

  • ⚑ Short Flag Support: Added convenient shorthand flags for environments
    • Production: --production, -p, -prod
    • Staging: --staging, -s
    • Development: --development, -d, -dev

Changes #

  • Enhanced CLI flag parsing to accept multiple variants for each environment
  • Updated environment flag filtering in extra flags extraction
  • Improved documentation for flag options

Examples #

# All these commands work the same:
dartdosh build apk --production
dartdosh build apk -p
dartdosh build apk -prod

dartdosh build apk --development
dartdosh build apk -d
dartdosh build apk -dev

dartdosh build apk --staging
dartdosh build apk -s

0.2.0 #

Features #

  • 🌍 Multi-Language Support: Full support for Uzbek (uz), English (en), and Russian (ru) languages
  • 🎯 Language Configuration: Added language field to build_config.json (default: "uz")
  • πŸ’¬ Localized Messages: All log messages translated with positive, encouraging tone across all languages
  • 🌟 Cultural Adaptation: Language-appropriate addressing - "Xo'jayiin" (uz), "Boss" (en), "Босс" (ru)

Changes #

  • Completely rewrote Logger class with multi-language support
  • Added static language state management in Logger
  • Implemented nested Map structure for translations: Map<String, Map<LogType, List<String>>>
  • All LogTypes now support 3 languages with multiple message variants
  • Language is read from build_config.json and applied to all log messages
  • BuildManager now sets language from config before executing builds

Technical #

  • Added Logger.setLanguage(String language) static method
  • Language validation: only accepts 'uz', 'en', 'ru'
  • Default language: 'uz' (Uzbek) if not specified in config
  • Maintains random message selection within each language

0.1.12 #

Features #

  • 🎯 Clean Progress Display: Build output is now hidden, showing only clean progress bar
  • ⚠️ Smart Error Display: Warnings and errors are still shown when they occur
  • πŸ“Š Enhanced Stage Detection: Added dependency resolution (30%) and "Got dependencies" (40%) stages

Changes #

  • Removed verbose Flutter build output for cleaner terminal
  • Only show warnings, errors, and failures from build output
  • Added dependency-related progress stages
  • Progress bar updates smoothly through all build stages (20% β†’ 40% β†’ 60% β†’ 95%)

0.1.11 #

Bug Fixes #

  • πŸ”§ Fixed Terminal Clearing: Progress bar now properly clears on macOS instead of creating new lines
  • πŸ“Š Enhanced Progress Detection: Added more build stage patterns (bundling, signing, assembling) for accurate progress tracking
  • 🎯 Better Stage Recognition: Progress now advances beyond 20% by detecting bundle, sign, and assemble stages

Changes #

  • Clear progress bar before showing stdout to prevent line duplication
  • Added comprehensive lowercase pattern matching for build stages
  • Added new build stages: bundling (60%), signing (80%), improved detection for assembling (70%)
  • Progress bar only shows after first stdout output to avoid premature display

0.1.10 #

Features #

  • ⚑ Faster Progress Updates: Progress bar now updates every 1 second (improved from 2 seconds)
  • πŸ“± Build Info Display: Progress bar now shows target and flavor being built (e.g., [apk - production])
  • 🍎 macOS Terminal Fix: Improved terminal clearing for better compatibility on macOS

Changes #

  • Changed progress update interval from 2 seconds to 1 second for more responsive feedback
  • Added target and environment info to progress bar display
  • Improved ANSI escape codes for terminal clearing on macOS

0.1.9 #

Features #

  • πŸ”„ Live Progress Updates: Progress bar updates every 2 seconds with current task info
  • πŸ“‹ Task Indicator: Shows what's happening: "Gradle ishlayapti...", "Flutter kodi kompilyatsiya qilinyapti..."
  • 🎯 AAB Support: Full support for aab and appbundle commands with proper file detection
  • πŸ”§ Better File Detection: Improved APK/AAB path detection for all flavors

Changes #

  • Progress bar now updates periodically (every 2 seconds) instead of on-demand
  • Added Timer.periodic for continuous progress updates
  • Fixed appbundle/aab not being copied to output path
  • Fixed flavor name duplication in Android build files
  • Improved split APK architecture extraction (only arch name, no flavor duplication)
  • Added more AAB path variants: productionRelease, stagingRelease, developmentDebug
  • Added more APK path variants for different flavor configurations

Bug Fixes #

  • Fixed: aab command not recognized
  • Fixed: Progress bar showing only once and freezing
  • Fixed: Appbundle files not moved to output directory
  • Fixed: Android file names containing duplicate flavor names (e.g., production_production_1.0.8.apk)

0.1.8 #

Features #

  • πŸ“Š Build Progress Bar: Real-time progress bar with percentage during builds
  • ⚑ Async Build Process: Non-blocking build execution with live output streaming
  • 🎯 Smart Progress Detection: Automatically detects Flutter build stages and updates progress

Changes #

  • Removed auto-open config file feature (config file no longer opens automatically)
  • Converted build process from sync to async for better performance
  • Added _handleProcessOutput() method for streaming build output
  • Added _showProgress() method with animated progress bar
  • Removed configFileOpened LogType (no longer needed)

0.1.7 #

Features #

  • πŸ’ Donation Messages: After successful builds, random humorous donation messages appear (10 variants)
  • πŸ“ Logger System: All console output now goes through the Logger system for consistency
  • 🎨 Better File Naming: Build files now named as {target}_{env}_{version}_{buildNumber} (e.g., apk_production_1.0.8_2150.apk)
  • πŸ”§ Enhanced LogTypes: Added buildNumberIncremented, fileSaved, outputDirCreated for detailed logging

Changes #

  • Removed all print() statements in favor of Logger.log()
  • Fixed file naming bug where environment was duplicated in filename
  • Added new LogType variants with random message selection
  • Improved code organization and consistency

0.1.6 #

Features #

  • 🎯 Desktop Output Path: Default output path now points to ~/Desktop/dartdosh-builds instead of releases
  • πŸ“‚ Auto File Open: Config file automatically opens in default editor after creation
  • πŸ’¬ Improved Messages: Better user feedback when config is created for first time
  • πŸ–₯️ Cross-Platform: Supports macOS, Linux, and Windows for auto file opening

Changes #

  • Changed default output_path from releases to ~/Desktop/dartdosh-builds
  • Added _openConfigFile() helper method for opening config in default editor
  • Enhanced console messages: "Xo'jayiin, default configlarni yaratdim, tekshirib ko'ring!"

0.1.5 #

Package Maintenance #

  • βœ… Added Verified Publisher: Package now published under verified publisher ahadjonovss.uz
  • πŸ“¦ Publisher Information: Added publisher field to pubspec.yaml for better package credibility

0.1.4 #

Bug Fixes #

  • πŸ› Fixed --split Flag for IPA: The --split flag is now properly ignored for IPA builds (iOS doesn't support split builds)
  • βœ… Improved Flag Handling: --split flag now only applies to APK builds, converting to --split-per-abi
  • πŸ“± Better Platform Support: Different build targets now handle flags appropriately based on platform capabilities

0.1.3 #

Critical Bug Fix #

  • πŸ”₯ Fixed Entry Point: Updated main entry point to use the new CLI class architecture
  • πŸ› Resolved Environment Detection: Fixed critical issue where dartdosh.dart was using old ArgParser code instead of the new CLI class
  • βœ… Simplified Architecture: Main entry point now properly delegates to CLI class for cleaner code organization

0.1.2 #

Bug Fixes #

  • πŸ› Fixed Environment Flag Parsing: Environment flags (--production, --staging, --development) are now correctly recognized and excluded from extra build flags
  • πŸ› Resolved "Unknown" Environment Error: Fixed issue where environment was being detected as "unknown" even when flags were provided

0.1.1 #

Code Quality Improvements #

  • βœ… Added Dartdoc Comments: All public APIs now have comprehensive documentation
  • βœ… Fixed Formatting Issues: All files formatted with dart format
  • βœ… Fixed Linting Issues: Removed unnecessary braces in string interpolation
  • βœ… Improved Pub Score: Achieved 50/50 pub points with proper documentation

Technical Changes #

  • Added dartdoc comments to CLI, BuildManager, and public functions
  • Fixed string interpolation warnings
  • Applied Dart formatting to entire codebase

0.1.0 #

New Features #

  • βœ… Automatic Build Number Increment: Build number automatically increments by 1 before each build
  • βœ… Output Path Support: Built files can be automatically copied to specified output directory
  • βœ… Smart File Naming: Files are renamed to {environment}_{version}_{buildNumber} format
  • βœ… Auto Directory Creation: Output directory is created automatically if it doesn't exist
  • βœ… Auto Config Generation: If build_config.json doesn't exist, it's automatically created with default settings
  • βœ… Personalized Messages: All log messages address the user as "Xo'jayiin" (Boss)

Changes #

  • Updated build_config.json structure to support output_path parameter
  • Build number is now incremented in pubspec.yaml before build starts
  • Built files are copied to output path (if specified) instead of just being renamed
  • Missing build_config.json is now auto-generated instead of causing an error
  • All logger messages now include "Xo'jayiin" for a personalized experience

Examples #

# With output_path configured
dartdosh build apk --production
# Result: releases/production_1.2.3_46.apk

# Without output_path
dartdosh build apk --staging
# Result: build/app/outputs/flutter-apk/staging_1.2.3_46.apk

0.0.3 #

  • Stable version with basic build functionality

0.0.1 #

  • Initial version
10
likes
0
points
401
downloads

Publisher

verified publisherahadjonovss.uz

Weekly Downloads

A powerful Flutter build CLI tool with automatic version management, smart file naming, and personalized experience

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

args, yaml

More

Packages that depend on dartdosh