Developer Commands¶
Home > Developer Commands
This document covers development and maintenance commands using Task (Taskfile.yml) and other developer tools.
For user-facing CLI commands (appimage-updater add, check, etc.), see the Usage Guide.
Task Commands¶
The project uses Task for development automation. All commands are defined in Taskfile.yml.
Testing Commands¶
# Run all tests
task test
# Run tests in parallel (faster)
task test:parallel
# Run fast parallel tests (skip slow tests)
task test:parallel-fast
# Run all test suites
task test:all
# Run end-to-end tests
task test:e2e
# Run end-to-end tests with coverage
task test:e2e-coverage
# Run regression tests
task test:regression
# Run pattern matching tests
task test:pattern-matching
# Run smoke tests
task test:smoke
Code Quality Commands¶
# Run all quality checks
task check
# Run quality checks in parallel
task check:parallel
# Run CI pipeline locally
task ci
# Format code
task format
# Lint code
task lint
# Type checking
task typecheck
Build and Release Commands¶
# Build distribution packages
task build
# Clean build artifacts
task clean
# Show current version
task version
# Bump patch version
task version:bump
# Bump minor version
task version:bump:minor
# Bump major version
task version:bump:major
# Prepare and build release
task release
# Create and push git tag
task release:tag
Development Environment¶
# Install development dependencies
task install
# Install in development mode
task install:dev
# Update dependencies
task update
# Show project info
task info
Documentation Commands¶
# Build documentation
task docs:build
# Serve documentation locally
task docs:serve
# Deploy documentation
task docs:deploy
Utility Commands¶
# Show all available tasks
task --list
# Show task details
task --summary <task-name>
# Run with verbose output
task --verbose <task-name>
# Run specific task file
task --taskfile custom.yml <task-name>
Development Workflow¶
Daily Development¶
# 1. Install dependencies
task install:dev
# 2. Run tests during development
task test:parallel-fast
# 3. Check code quality
task check
# 4. Format code before commit
task format
Before Committing¶
# Run full CI pipeline locally
task ci
# Or run individual checks
task test:all
task check:parallel
task typecheck
Release Process¶
# 1. Bump version (updates pyproject.toml and commits)
task version:bump
# 2. Prepare release (validates, tests, updates CHANGELOG, builds)
task release
# 3. Create and push git tag (triggers GitHub Actions)
task release:tag
# GitHub Actions will automatically:
# - Create GitHub release with artifacts
# - Publish to PyPI
# - Deploy documentation
Other Developer Tools¶
Python Environment¶
# Using uv (recommended)
uv sync
uv run pytest
# Using pip
pip install -e .
pip install -r requirements-dev.txt
Direct Tool Usage¶
# Run tests directly
pytest tests/
pytest --cov=src/appimage_updater
# Code quality tools
ruff check src/
mypy src/
radon cc src/
For complete information on development setup, testing procedures, and contribution guidelines, see:
- Development Guide - Development environment setup
- Testing Guide - Detailed testing procedures and coverage
- Contributing Guide - Contribution guidelines and standards
- Architecture Guide - System design and component overview