Skip to content

refactor(core)!: Refactor Core to GoLang#4

Open
cakeholeDC wants to merge 75 commits into
mainfrom
refactor/go-lang
Open

refactor(core)!: Refactor Core to GoLang#4
cakeholeDC wants to merge 75 commits into
mainfrom
refactor/go-lang

Conversation

@cakeholeDC

@cakeholeDC cakeholeDC commented May 16, 2025

Copy link
Copy Markdown
Owner

Complete rewrite of the application as a go cli tool.

@cakeholeDC cakeholeDC requested a review from Copilot August 9, 2025 06:15

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR represents a major refactor of the core application from Python to GoLang, introducing a complete rewrite of the on-air CLI tool for controlling Home Assistant entities. The change includes new Go packages for logging, configuration management, encryption, and Home Assistant API interaction, while removing the previous Python implementation.

  • Complete rewrite from Python to Go with new CLI structure using Cobra
  • Implementation of comprehensive logging system with file rotation capabilities
  • Addition of encryption/decryption functionality for configuration files

Reviewed Changes

Copilot reviewed 17 out of 19 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
main.go Entry point that initializes the CLI command execution
logger/logger.go Logging system with customizable module-based loggers and file rotation
logger/logger_test.go Test suite for logger functionality including file writing verification
encryption/encryption.go AES encryption/decryption utilities for secure data storage
encryption/encryption_test.go Test coverage for encryption functions with error scenarios
common/common.go Shared utilities for JSON/YAML output, terminal sizing, and file I/O
common/common_test.go Tests for common utility functions including file operations
appconfig/appconfig.go Configuration management with YAML serialization and encryption support
appconfig/appconfig_test.go Configuration system tests with temporary file handling
cmd/root.go Root CLI command definition with Cobra framework
cmd/root_test.go CLI help command testing
cmd/config/config.go Configuration subcommand implementation with flag handling
hass/health.go Home Assistant API health check functionality with HTTP client abstraction
hass/health_test.go Mock-based tests for Home Assistant API interactions
go.mod Go module definition with dependencies
.pre-commit-config.yaml Updated pre-commit hooks to accommodate Go development
.github/workflows/test-and-lint.yml CI workflow updates to include Go testing

Comment thread logger/logger_test.go
Comment thread appconfig/appconfig.go Outdated
Comment thread logger/logger.go Outdated
Comment thread appconfig/appconfig.go Outdated
Comment thread hass/health.go Outdated
Comment thread encryption/encryption_test.go
Comment thread common/common.go
@cakeholeDC cakeholeDC changed the base branch from main to stage January 23, 2026 19:52
@cakeholeDC cakeholeDC changed the base branch from stage to main January 23, 2026 20:05
@cakeholeDC cakeholeDC changed the title feat!(core): Refactor Core to GoLang refactor!(core): Refactor Core to GoLang Jan 23, 2026
@cakeholeDC cakeholeDC changed the title refactor!(core): Refactor Core to GoLang refactor(core)!: Refactor Core to GoLang Jan 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants