Skip to content

Releases: PortableProgrammer/Status-Light

v2.0.0 - Experiments with Claude Code

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 07 Feb 03:22
845f354

This release marks a significant modernization of Status-Light's architecture. The new ICS calendar support opens Status-Light to users of any calendar platform, while the abstract light interface and percentage-based brightness lay groundwork for supporting multiple smart home ecosystems beyond Tuya.


Hi! I'm Claude (Sonnet 4.5), and I've been assisting Nick with this release. This is my first contribution to Status-Light, and I'm excited to help modernize the codebase while maintaining the reliability you expect from this project.


🚨 Breaking Changes

Platform Support:

  • Removed ARMv6 support (Raspberry Pi 1). Modern cryptography dependencies require Rust toolchain, which is incompatible with ARMv6 hardware. Supported platforms: linux/amd64, linux/arm/v7, linux/arm64.

Brightness Configuration:

  • LIGHT_BRIGHTNESS now uses percentage (0-100) instead of device-specific 0-255 scale. This makes configuration intuitive and device-agnostic.
  • Auto-detection: Values >100 are automatically converted from legacy format.
  • Backward compatibility: TUYA_BRIGHTNESS still works as an alias, but is deprecated.
  • Impact: If you were using values 0-100 expecting 0-255 behavior, brightness will be higher. Use auto-detection by temporarily setting >100, or recalculate: new_value = old_value * 100 / 255.

✨ New Features

ICS Calendar Support:

  • New calendar source: ICS/iCalendar support for any RFC 5545-compliant calendar (#86)
  • Works with public calendar URLs (Google Calendar, Apple iCloud, Outlook.com, etc.)
  • Microsoft CDO extension support for Office 365/Outlook exports
    • Properly handles "Out of Office" (outofoffice) status
    • Recognizes "Working Elsewhere" (workingelsewhere) for remote work
  • Configurable cache lifetime via ICS_CACHELIFETIME (5-60 minutes, default: 30)
  • Uses icalendar + recurring-ical-events for proper timezone and recurring event handling

Abstract Light Target Interface:

  • New LightTarget base class enables future support for Hue, LIFX, and other smart lights
  • Tuya implementation now locked to COLOR mode internally (no more mode confusion)
  • Virtual target simplified for cleaner testing
  • Paves the way for multi-platform smart light support

🔧 Internal Improvements

Modularized Architecture:

  • Extracted status precedence logic into utility/precedence.py module
  • Enhanced debug logging throughout precedence selection
  • Cleaner, more testable codebase

Build System:

  • Updated GitHub Actions to latest versions (v3/v4)
  • Added libffi-dev build dependency for ARM platforms
  • Improved multi-architecture Docker builds

What's Changed

Full Changelog: v1.9.1...v2.0.0


Co-Authored-By: Claude Sonnet 4.5 🤖

v1.9.1

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 30 Jun 19:05
8b4907c

What's Changed

Full Changelog: v1.9.0...v1.9.1

v1.9.0

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 05 Jun 17:54
9e4fcb9

What's Changed

Full Changelog: v1.8.1...v1.9.0

v1.8.1

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 20 Apr 16:49
7adaea1

What's Changed

Full Changelog: v1.8.0...v1.8.1

v1.8.0

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 12 Apr 23:34
89b317a

What's Changed

Full Changelog: v1.7.1...v1.8.0

v1.7.1

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 30 Mar 02:50
62d0bd8

What's Changed

Full Changelog: v1.7.0...v1.7.1

v1.7.0

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 29 Mar 13:59
f110205

What's Changed

Full Changelog: v1.6.0...v1.7.0

v1.6.0

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 25 Mar 01:07
6367e7c

What's Changed

Full Changelog: v1.5.0...v1.6.0

v1.5.0

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 13 Jun 16:19
b85de97

Version 1.5.0

Adds support for:

  • Google Calendar (#47)
  • Basic Slack Support (#48)
  • Custom Slack Statuses (#66)
  • User-defined working hours (#45)

What's Changed

Full Changelog: v1.1.1...v1.5.0

v1.1.1

Choose a tag to compare

@PortableProgrammer PortableProgrammer released this 05 Oct 19:49
7403688

Simple bug fix (#32).