-
Notifications
You must be signed in to change notification settings - Fork 0
Development #37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Development #37
Changes from all commits
56e44f8
82db2b0
579683d
fad6d1a
a12de82
5d79afe
0f3af89
d5d90f6
cbf5fcd
5a5d1d5
207ba9b
76b9912
366b640
ebc7bb7
be9a086
3fc9146
914b789
938886f
7737a2f
3ea0d45
ee4de2a
3ae0527
25dc303
730dc88
bb266bd
7d70a13
d1f450d
5436727
d8c850e
1405787
1ad53b1
3956aed
a0b1f82
a2d0cea
6adf5b1
57df8ef
6bbabff
7672520
d56e12e
5aca8cf
f0cb455
dd0ffab
4f534c8
9095db5
979acca
008f0e0
c09bdcc
1cb53f6
ee60426
56967e2
cfcf2dd
1aa6813
5844084
4a6a8e5
693bfbc
326928e
a80e583
69800d3
365ef8e
61d9dcf
046c52f
7b33d13
638fb4e
59a7722
4a09f0b
99b9642
15efb3c
6ca3832
08355e7
0d7bb86
484caaf
a45dcfc
478e8ea
6ad992d
2fcaa47
4e39aa1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -13,7 +13,7 @@ jobs: | |||||
| runs-on: ubuntu-latest | ||||||
| strategy: | ||||||
| matrix: | ||||||
| python-version: ['3.9', '3.10', '3.11'] | ||||||
| python-version: ['3.10'] | ||||||
|
||||||
| python-version: ['3.10'] | |
| python-version: ['3.9', '3.10', '3.11'] |
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -225,14 +225,18 @@ chat-yapper/ | |||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ## Changelog | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ### v1.3.0 (Latest) | ||||||||||||||||||||||||||
| ### v1.3.1 (Latest) | ||||||||||||||||||||||||||
| - **New Features:** | ||||||||||||||||||||||||||
| - Twitch fix | ||||||||||||||||||||||||||
| - Allow random avatar assignment | ||||||||||||||||||||||||||
| - More fonts to select from | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| ### v1.3.0 (Latest) | ||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| ### v1.3.0 (Latest) | |
| ### v1.3.0 (Latest) | |
| - **New Features:** |
Copilot
AI
Feb 14, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Multiple versions are marked as "(Latest)" in the changelog. Only the most recent version (v1.3.1) should have the "(Latest)" tag. The "(Latest)" marker should be removed from v1.3.0 and v1.2.2.
| ### v1.3.0 (Latest) | |
| - Better control of avatar placement in Avatar Layout Editor | |
| - Select and Adjust speaking animations for crowd mode | |
| - Added idle animations for crowd mode | |
| ### v1.2.2 (Latest) | |
| ### v1.3.0 | |
| - Better control of avatar placement in Avatar Layout Editor | |
| - Select and Adjust speaking animations for crowd mode | |
| - Added idle animations for crowd mode | |
| ### v1.2.2 |
Copilot
AI
Feb 14, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Spelling error: "notifcations" should be "notifications".
| - Some more twitch fixes and improved notifcations | |
| - Some more twitch fixes and improved notifications |
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -331,9 +331,15 @@ async def event_ready(self): | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| who = getattr(self, "nick", None) or self._nick or "unknown" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| try: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| logger.info(f"Twitch bot ready as {who}, listening to {self.channel_name}") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # Join the channel to start receiving messages (required in TwitchIO 3.x) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| await self.join_channels([self.channel_name]) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| logger.info(f"Joined channel: {self.channel_name}") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # In TwitchIO 3.x, channels from initial_channels should auto-join | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # But we can verify by checking connected channels | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| if hasattr(self, 'connected_channels'): | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| logger.info(f"Connected channels: {list(self.connected_channels)}") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # Log available methods for debugging | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| logger.debug(f"Bot methods: {[m for m in dir(self) if 'channel' in m.lower() or 'join' in m.lower()]}") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Comment on lines
+334
to
+342
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # In TwitchIO 3.x, channels from initial_channels should auto-join | |
| # But we can verify by checking connected channels | |
| if hasattr(self, 'connected_channels'): | |
| logger.info(f"Connected channels: {list(self.connected_channels)}") | |
| # Log available methods for debugging | |
| logger.debug(f"Bot methods: {[m for m in dir(self) if 'channel' in m.lower() or 'join' in m.lower()]}") | |
| # In TwitchIO 3.x, channels from initial_channels should auto-join | |
| # But we can verify by checking connected channels | |
| connected_names = set() | |
| if hasattr(self, "connected_channels"): | |
| try: | |
| # connected_channels is typically a list of Channel objects | |
| connected_names = { | |
| getattr(c, "name", str(c)).lower() | |
| for c in (self.connected_channels or []) | |
| } | |
| logger.info(f"Connected channels: {list(self.connected_channels)}") | |
| except Exception: | |
| # If anything goes wrong, fall back to empty set and try explicit join | |
| connected_names = set() | |
| # Explicitly join the target channel if not already connected. | |
| # This preserves behavior in TwitchIO versions where auto-join is unreliable. | |
| target = (self.channel_name or "").lower() | |
| if target and target not in connected_names and hasattr(self, "join_channels"): | |
| try: | |
| logger.info(f"Twitch bot explicitly joining channel: {self.channel_name}") | |
| await self.join_channels([self.channel_name]) | |
| except Exception as join_exc: | |
| logger.error(f"Failed to explicitly join channel {self.channel_name}: {join_exc}", exc_info=True) | |
| # Log available methods for debugging | |
| logger.debug( | |
| f"Bot methods: {[m for m in dir(self) if 'channel' in m.lower() or 'join' in m.lower()]}" | |
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Python version in the build workflow is being downgraded from 3.11 to 3.10. While this aligns with the test workflow changes, there's no explanation in the PR description for why this downgrade is necessary. If there's a compatibility issue with Python 3.11, it should be documented. The README.md still states "Python 3.9+" as a requirement, so this change should be compatible, but the rationale should be clear.