particle-os-tools/CHANGELOG.md
Joe Particle 4f00e140a3
Some checks failed
Compile apt-layer (v2) / compile (push) Failing after 3h13m50s
feat: add changelog, docs, and update various scripts for modular CLI milestone
2025-07-17 09:22:29 +00:00

3.4 KiB

Changelog

[Unreleased]

Added

  • Integration Testing Suite: Complete integration testing infrastructure
    • comprehensive_integration_test.py - Full test suite with 24 tests across 7 categories
    • run_integration_tests.sh - Test runner with proper setup and error handling
    • quick_test.py - Quick validation script for basic functionality
    • Support for verbose output, JSON output, and specific test categories
    • 100% SUCCESS RATE ACHIEVED - All 24 integration tests passing <<<<<<< HEAD =======
  • Modularized all CLI commands into separate modules under client/commands/.
  • Each command module now exports setup_parser and run functions for consistency.
  • Comprehensive test script for client CLI refactor.

9070ae3 (feat: add changelog, docs, and update various scripts for modular CLI milestone)

Fixed

  • D-Bus Method Registration: Added missing methods to AptOstreeSysrootInterface
    • GetDeployments() - Returns deployments as JSON string
    • GetBootedDeployment() - Returns currently booted deployment
    • GetDefaultDeployment() - Returns default deployment
    • GetActiveTransaction() - Returns active transaction details
  • Systemd Service Hanging: Fixed daemon signal handling and restart behavior
    • Changed from await asyncio.Event().wait() to while self.running: await asyncio.sleep(1)
    • Added proper timeouts and kill modes to systemd service
    • Service now restarts cleanly in ~2 seconds
  • apt-layer.sh Integration: Fixed daemon path detection
    • Created symlink from /usr/local/bin/apt-ostree to actual daemon
    • All apt-layer.sh daemon commands now working correctly
  • D-Bus Auto-Activation: Created proper D-Bus service file
    • org.debian.aptostree1.service - Enables auto-activation when D-Bus methods called
    • Fixed environment setup issues causing Spawn.FailedToSetup errors
    • Daemon now auto-starts correctly via D-Bus activation

Changed

  • Integration Test Results:
    • Before: 14/24 tests passing (58.3% success rate)
    • After: 24/24 tests passing (100% success rate)
  • Test Categories: All 7 categories now passing
    • Systemd Service (2/2 tests)
    • D-Bus Interface (6/6 tests)
    • apt-layer.sh Integration (4/4 tests)
    • Transaction Management (2/2 tests)
    • Error Handling (2/2 tests)
    • Performance (2/2 tests)
    • Security (1/1 test) <<<<<<< HEAD =======
  • Updated client/main.py to delegate to command modules and use new D-Bus interface.
  • Fixed imports in client/commands/__init__.py to import modules, not symbols.
  • Standardized command execution function to run in all modules.
  • Updated D-Bus mocks in tests to return dicts, not JSON strings.
  • Fixed test script to call module.run() and check for both run and setup_parser.

9070ae3 (feat: add changelog, docs, and update various scripts for modular CLI milestone)

Technical Details

  • Test Infrastructure: Production-ready testing framework with proper error handling
  • D-Bus Integration: Complete D-Bus interface with all required methods and properties
  • Systemd Integration: Proper service management with signal handling and timeouts
  • Shell Integration: Full apt-layer.sh integration with daemon commands
  • Performance: Sub-second response times for all D-Bus operations
  • Security: Proper authorization and access controls working

[Previous Entries...]