Skip to content

v2.9.0

Latest
Compare
Choose a tag to compare
@jcgoette jcgoette released this 31 Oct 14:50

Release Notes

New Features

  • Add more accurate types for configuration (port and scan_interval) to improve type safety and accuracy in configuration setups. (Commit: 3a71632)
  • Add a "notes" field to all applicable services, enhancing service documentation capabilities and usability for developers. (Commit: a84d10f)

Bug Fixes

  • Prevent direct modification of version: Now requires async_update_entry instead to handle version changes. (Commit: a5b7f68)
  • Handle tzinfo correctly: Fixed an issue where existing timezone information was unintentionally overridden. (Commit: 61b3718)
  • Correct location for pumping logic: Moved to switch.py for improved modularity and clarity. (Commit: 2d3f973)
  • Prevent redefinition of self._attr_device_class to maintain attribute consistency. (Commit: 387ef23)
  • Ensure vol.Exclusive usage: Removed unsupported default argument for better compatibility. (Commit: 90959d4)
  • Avoid redefinition of built-ins to prevent unexpected behavior. (Commit: 7e4af5a)

Testing

  • Added extensive tests for core services and config flows, covering most key functionalities and providing a stronger foundation for future development. (Commits: 5cb75fd, 4e77604, 34d2d24)

Code Refactoring

  • Shifted to asyncio.timeout instead of async_timeout to leverage native functionality and improve efficiency. (Commit: 7135aa0)
  • Enhanced constant usage across modules for better maintainability and consistency, including constants for "user", "add_child", and error terminology. (Commits: 04de452, bb5d092, 6f56ef6, fe40fee, b8c660b)
  • Relocated icons to constants for easier reference and modification. (Commit: 95d3105)
  • Removed unnecessary imports and fixtures to clean up code and reduce dependencies. (Commits: 96f3474, 8569eb3)

Continuous Integration / Development Environment

  • Enhanced CI/CD scheduling for tasks reliant on external sources. (Commit: 4298f6a)
  • Adjusted Ruff and isort compatibility to ensure consistent code formatting. (Commit: d7ae912)
  • Removed cspell from the CI pipeline due to maintenance overhead. (Commit: c575d27)
  • Introduced a devcontainer to standardize the development environment and improve developer onboarding. (Commit: 1b2b7a8)

Style & Documentation

  • Standardized YAML file extensions to .yaml across the project for consistency. (Commit: 3cbe455)
  • Updated docstring formats to align with project style guidelines. (Commit: 2f4cbf5)
  • Improved logging practices by removing unnecessary Pylint disabling of f-string interpolation. (Commit: 830a40b)
  • General code formatting improvements with Ruff to enhance readability and maintainability. (Commits: 595e559, 8d17efb)

Full Changelog: v2.8.0...v2.9.0