Skip to content

Development#30

Merged
pladisdev merged 64 commits intomainfrom
development
Nov 25, 2025
Merged

Development#30
pladisdev merged 64 commits intomainfrom
development

Conversation

@pladisdev
Copy link
Owner

No description provided.

pladisdev and others added 30 commits November 2, 2025 09:42
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
…4b50-93c4-0e11b13594f4

Clarify error handler ordering is correct - no changes needed
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
Co-authored-by: pladisdev <127021507+pladisdev@users.noreply.github.com>
…47b6-b204-5bf8892748d3

Extract magic numbers to named constants in audio playback code
…4606-8149-97ceaa22873d

Use platform.system() instead of sys.platform for OS detection
Extract duplicated hex opacity calculation to utility function
Extract avatar active offset magic number into configurable setting
Fix audio reference cleanup on play() failure in popup mode
Fix race condition in popup avatar lifecycle
Copilot AI review requested due to automatic review settings November 25, 2025 21:14
@pladisdev pladisdev merged commit cc38852 into main Nov 25, 2025
7 of 10 checks passed
Copy link
Contributor

Copilot AI left a comment

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 refactors import structure for queue management, adds backward compatibility for settings, and includes defensive programming improvements. The main focus is moving queue-related imports from the main app module to a dedicated queue_manager module to improve code organization and prevent circular dependencies.

  • Import refactoring: Moves avatar_message_queue and parallel_message_queue from app to modules.queue_manager across 12 import locations
  • Settings backward compatibility: Implements default settings merging to ensure new settings are available in older databases
  • Defensive programming: Adds undefined check in frontend to prevent potential runtime errors

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
frontend/src/components/settings/GeneralSettings.jsx Adds defensive undefined check before calling toString() on parallelMessageLimit
backend/version.py Version bump from 1.3.0 to 1.3.1
backend/routers/system.py Updates import to get parallel_message_queue from queue_manager module
backend/routers/config_backup.py Updates import to get avatar_message_queue from queue_manager module
backend/routers/avatars.py Updates all avatar_message_queue imports across 11 locations to use queue_manager module
backend/modules/persistent_data.py Implements default settings merging to ensure backward compatibility with older databases

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

Comment on lines 110 to 112
except Exception as e:
logger.error(f"Error loading settings: {e}")
return {}
Copy link

Copilot AI Nov 25, 2025

Choose a reason for hiding this comment

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

The exception handler returns an empty dictionary instead of defaults, which is inconsistent with the logic on line 109 where defaults is returned when no settings are found. This could lead to missing default settings when an error occurs during settings loading. Consider returning defaults here as well to ensure fallback to default settings in all error cases.

Copilot uses AI. Check for mistakes.
@github-actions
Copy link

✅ Windows Build Successful

Executable: ChatYapper.exe (68.31 MB)
MSI Installer: ChatYapper-1.3.1.msi (67.65 MB)
App Version: 1.3.1
Build ID: build-v1.3.1-2025.11.25-7abefd2
Commit: 7abefd2

Build Status

  • ✅ Windows executable & MSI installer
  • 🔄 Linux build (check separate job)
  • 🔄 Docker image (check separate job)

Download the artifacts from the workflow run to test before merging.

Once merged to main, an official release will be created automatically with tag v1.3.1.

@github-actions
Copy link

🐳 Docker Image Built Successfully

Image: ghcr.io/pladisdev/chat-yapper:pr-7abefd2
Tag: pr-7abefd2

Test this PR with Docker:

docker pull ghcr.io/pladisdev/chat-yapper:pr-7abefd2

docker run -d \
  --name chat-yapper-pr \
  -p 8069:8008 \
  -e TWITCH_CLIENT_ID=your_id \
  -e TWITCH_CLIENT_SECRET=your_secret \
  ghcr.io/pladisdev/chat-yapper:pr-7abefd2

Access at: http://localhost:8069

The Docker image will be published to the GitHub Container Registry when merged to main.

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.

3 participants