Skip to content

Bugfix/20260308 fixes#20

Merged
StephanU merged 4 commits intomainfrom
bugfix/20260308_fixes
Mar 8, 2026
Merged

Bugfix/20260308 fixes#20
StephanU merged 4 commits intomainfrom
bugfix/20260308_fixes

Conversation

@StephanU
Copy link
Copy Markdown
Owner

@StephanU StephanU commented Mar 8, 2026

No description provided.

Copy link
Copy Markdown

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 addresses shared-state initialization bugs by moving per-instance state from class attributes into proper __init__ initializers, and updating all resource value accessors and data providers to call super().__init__().

Changes:

  • Add __init__ to EntityValueAccessor to initialize _data per instance, and update all *ValueAccessor subclasses to call super().__init__().
  • Add __init__ to DataProviderBase to initialize _subscriber, _status, and _resources per instance, and update DummyDataProvider / DataProvider to call super().__init__().
  • Minor formatting: insert a blank line after module docstrings across touched modules.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.

Show a summary per file
File Description
PyMyGekko/resources/Vents.py Ensure VentValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/RoomTemps.py Ensure RoomTempsValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/Meteo.py Ensure MeteoValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/Loads.py Ensure LoadValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/Lights.py Ensure LightValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/HotWaterSystems.py Ensure HotWaterSystemValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/EnergyCosts.py Ensure EnergyCostValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/DoorInterComs.py Ensure DoorInterComValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/Cams.py Ensure CamValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/Blinds.py Ensure BlindValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/AlarmsLogics.py Ensure AlarmsLogicValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/Actions.py Ensure ActionValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/resources/AccessDoors.py Ensure AccessDoorValueAccessor initializes base accessor state via super().__init__().
PyMyGekko/data_provider.py Move provider/accessor state to instance initialization and wire super().__init__() into provider subclasses.

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

@StephanU StephanU merged commit 10169fd into main Mar 8, 2026
3 checks passed
@StephanU StephanU deleted the bugfix/20260308_fixes branch March 8, 2026 09:23
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