- custom_components/fglair: manifest (config_flow, local_push, requirements),
const, trial (start -> ONLINE <=10 c -> GET базовых свойств), FglairClient
(сессия pyfglair в executor, колбэки в loop, --runtime_data),
__init__ (setup/unload, рефкаунт глобального лог-пампа)
- config flow: меню cloud/manual/import_json + import-source; discover через
pyfglair.provision; пробное подключение с диагностикой (cannot_connect,
no_slots, key_mismatch, timeout, invalid_auth, invalid_import); unique_id=dsn
- strings.json + translations/{en,ru}.json
- тесты HA (pytest-homeassistant-custom-component): меню/шаги/ошибки/импорт/
облако (discover замокан), setup/unload, занятый порт; trial против
mock_ac.py (online/key_mismatch/unreachable/no_slots)
- pytest.ini (общий), tests/conftest перенесён на уровень tests/,
scripts/py-ci.sh: --setup-ha и прогон tests/components
31 lines
692 B
TOML
31 lines
692 B
TOML
[build-system]
|
|
requires = ["setuptools>=68", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "pyfglair"
|
|
version = "1.0.0"
|
|
description = "Local control of Fujitsu General (FGLair/Ayla) air conditioners: cffi bindings to the fgl-aircon C++ core"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"cffi>=1.15",
|
|
"aiohttp>=3.9",
|
|
]
|
|
classifiers = [
|
|
"Programming Language :: Python :: 3",
|
|
"Operating System :: POSIX :: Linux",
|
|
"Topic :: Home Automation",
|
|
]
|
|
|
|
[project.scripts]
|
|
pyfglair = "pyfglair.__main__:main"
|
|
|
|
[tool.setuptools]
|
|
packages = ["pyfglair"]
|
|
include-package-data = true
|
|
zip-safe = false
|
|
|
|
[tool.setuptools.package-data]
|
|
pyfglair = ["py.typed"]
|