iobroker.govee-smart 2.6.3 → 2.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -128,6 +128,10 @@ This adapter's MQTT authentication and BLE-over-LAN (ptReal) protocol implementa
128
128
  Placeholder for the next version (at the beginning of the line):
129
129
  ### **WORK IN PROGRESS**
130
130
  -->
131
+ ### 2.6.4 (2026-05-10)
132
+
133
+ - Internal test-runner switched from mocha+ts-node to vitest. No user-facing changes, but the test suite runs in about a second instead of several seconds, and the maintainer-side test-loader bug that blocked some refactors is gone. Source code is byte-identical.
134
+
131
135
  ### 2.6.3 (2026-05-10)
132
136
 
133
137
  - Real-time status push (`info.mqttConnected`, `info.openapiMqttConnected`) now recovers automatically after a brief Govee outage. Previously, a rare subscribe rejection could leave the indicator stuck on `false` until the next adapter restart.
@@ -150,10 +154,6 @@ This adapter's MQTT authentication and BLE-over-LAN (ptReal) protocol implementa
150
154
 
151
155
  - Multi-language: state names, descriptions and dropdown labels are now in your ioBroker system language (11 languages).
152
156
 
153
- ### 2.5.4 (2026-05-04)
154
-
155
- - Test-coverage expansion: `mqtt.connect` is now an injectable constructor parameter (like `httpsRequest` in v2.5.1), and 7 new mock tests cover the getIotKey path and persisted-credentials reuse.
156
-
157
157
  Older entries are in [CHANGELOG_OLD.md](CHANGELOG_OLD.md).
158
158
 
159
159
  ## Support
package/io-package.json CHANGED
@@ -1,8 +1,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "govee-smart",
4
- "version": "2.6.3",
4
+ "version": "2.6.4",
5
5
  "news": {
6
+ "2.6.4": {
7
+ "en": "Internal test-runner switched from mocha+ts-node to vitest. No user-facing changes — source code is byte-identical, the test suite just runs in about a second instead of several.",
8
+ "de": "Interner Test-Runner von mocha+ts-node auf vitest umgestellt. Keine User-sichtbaren Änderungen — Source-Code unverändert, Test-Suite läuft jetzt in rund einer Sekunde statt mehreren.",
9
+ "ru": "Внутренний тест-раннер переведён с mocha+ts-node на vitest. Для пользователя ничего не меняется — исходный код тот же, набор тестов просто выполняется примерно за секунду вместо нескольких.",
10
+ "pt": "Test-runner interno mudou de mocha+ts-node para vitest. Sem alterações visíveis ao utilizador — o código-fonte é idêntico; a suite de testes roda em cerca de um segundo em vez de vários.",
11
+ "nl": "Interne test-runner overgezet van mocha+ts-node naar vitest. Geen wijzigingen voor gebruikers — broncode identiek, test-suite draait nu in ongeveer een seconde in plaats van meerdere.",
12
+ "fr": "Test-runner interne migré de mocha+ts-node à vitest. Aucun changement visible — le code source reste identique, la suite de tests s'exécute en environ une seconde au lieu de plusieurs.",
13
+ "it": "Test-runner interno migrato da mocha+ts-node a vitest. Nessun cambiamento per l'utente — codice sorgente identico, la suite di test ora gira in circa un secondo invece di diversi.",
14
+ "es": "Test-runner interno migrado de mocha+ts-node a vitest. Sin cambios visibles para el usuario — el código fuente es idéntico; la suite de tests se ejecuta en cerca de un segundo en lugar de varios.",
15
+ "pl": "Wewnętrzny test-runner przeniesiony z mocha+ts-node na vitest. Brak zmian dla użytkownika — kod źródłowy bez zmian, suite testów wykonuje się teraz w około sekundę zamiast kilku.",
16
+ "uk": "Внутрішній тест-раннер переведений з mocha+ts-node на vitest. Без змін для користувача — вихідний код такий самий, набір тестів тепер виконується приблизно за секунду замість кількох.",
17
+ "zh-cn": "内部测试运行器从 mocha+ts-node 切换为 vitest。用户层面没有任何变化——源码完全一致;测试套件运行时间从数秒缩短到约一秒,并修复了一个困扰我们维护工作的测试加载器边界问题。"
18
+ },
6
19
  "2.6.3": {
7
20
  "en": "Status indicators recover automatically after a Govee outage, multi-segment snapshot restore is fast again, invalid manual pairing IP and silent Cloud errors are now reported.",
8
21
  "de": "Statusanzeigen erholen sich nach einem Govee-Ausfall automatisch, Snapshot-Wiederherstellung mit Segmenten ist wieder schnell, falsche Pairing-IP und stille Cloud-Fehler werden jetzt gemeldet.",
@@ -80,19 +93,6 @@
80
93
  "pl": "Wizard wykrywania segmentow nie spamuje juz 'has no existing object' dla indeksow powyzej rzeczywistej dlugosci tasmy. Plus: polecenie przed cloud-init jest teraz ciche.",
81
94
  "uk": "Wizard виявлення сегментів більше не спамить 'has no existing object' для індексів понад реальну довжину стрічки. Плюс: команда до cloud-init тепер тиха.",
82
95
  "zh-cn": "段检测向导不再为超出真实灯带长度的索引刷 'has no existing object' 警告。加上:cloud-init 完成前的命令现在不再产生 'No channel available' 警告。"
83
- },
84
- "2.5.2": {
85
- "en": "Stops the 'membersUnreachable has no existing object' WARN spam every 2 min — group state stays present with empty value. Plus verified H61A8 Outdoor Neon LED Strip 10m.",
86
- "de": "Behebt WARN-Spam 'membersUnreachable has no existing object' alle 2 Min — Gruppen-State bleibt existent mit leerem Wert. Plus verifiziert: H61A8 Outdoor Neon LED Strip 10m.",
87
- "ru": "Устраняет WARN-спам 'membersUnreachable has no existing object' каждые 2 мин — state группы остается с пустым значением. Плюс H61A8 Outdoor Neon LED Strip 10m verified.",
88
- "pt": "Corrige o WARN spam 'membersUnreachable has no existing object' a cada 2 min — state do grupo permanece com valor vazio. Plus H61A8 Outdoor Neon LED Strip 10m verificado.",
89
- "nl": "Lost WARN-spam 'membersUnreachable has no existing object' elke 2 min op — group state blijft aanwezig met lege waarde. Plus H61A8 Outdoor Neon LED Strip 10m verified.",
90
- "fr": "Corrige le spam WARN 'membersUnreachable has no existing object' toutes les 2 min — l'etat du groupe reste present avec valeur vide. Plus H61A8 Outdoor Neon LED Strip 10m verifie.",
91
- "it": "Corregge lo spam WARN 'membersUnreachable has no existing object' ogni 2 min — lo state del gruppo resta presente con valore vuoto. Plus H61A8 Outdoor Neon LED Strip 10m verificato.",
92
- "es": "Corrige el spam WARN 'membersUnreachable has no existing object' cada 2 min — el state del grupo permanece presente con valor vacio. Plus H61A8 Outdoor Neon LED Strip 10m verificado.",
93
- "pl": "Usuwa WARN-spam 'membersUnreachable has no existing object' co 2 min — state grupy pozostaje obecny z pustą wartością. Plus H61A8 Outdoor Neon LED Strip 10m verified.",
94
- "uk": "Усуває WARN-спам 'membersUnreachable has no existing object' кожні 2 хв — state групи залишається з порожнім значенням. Плюс H61A8 Outdoor Neon LED Strip 10m verified.",
95
- "zh-cn": "修复每 2 分钟 'membersUnreachable has no existing object' WARN 刷屏 — 组 state 保持存在并写入空值。新增已验证设备:H61A8 Outdoor Neon LED Strip 10m。"
96
96
  }
97
97
  },
98
98
  "titleLang": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.govee-smart",
3
- "version": "2.6.3",
3
+ "version": "2.6.4",
4
4
  "description": "Control Govee WiFi devices via LAN, MQTT and Cloud.",
5
5
  "author": {
6
6
  "name": "krobi",
@@ -44,16 +44,15 @@
44
44
  "@iobroker/adapter-dev": "^1.5.0",
45
45
  "@iobroker/eslint-config": "^2.2.0",
46
46
  "@iobroker/testing": "^5.2.2",
47
+ "@tsconfig/node22": "^22.0.5",
47
48
  "@types/iobroker": "npm:@iobroker/types@^7.1.1",
48
49
  "@types/node": "^22.0.0",
49
50
  "@types/node-forge": "^1.3.14",
50
51
  "@types/uuid": "^11.0.0",
51
- "nyc": "^18.0.0",
52
52
  "rimraf": "^6.1.3",
53
- "source-map-support": "^0.5.21",
54
53
  "ts-node": "^10.9.2",
55
54
  "typescript": "~5.9.3",
56
- "@tsconfig/node22": "^22.0.5"
55
+ "vitest": "^4.1.5"
57
56
  },
58
57
  "main": "build/main.js",
59
58
  "files": [
@@ -70,11 +69,11 @@
70
69
  "build": "build-adapter ts",
71
70
  "watch": "build-adapter ts --watch",
72
71
  "check": "tsc --noEmit",
73
- "test:ts": "mocha --config test/mocharc.custom.json \"src/**/*.test.ts\"",
72
+ "test:ts": "vitest run",
74
73
  "test:package": "mocha test/package --exit",
75
74
  "test:integration": "mocha test/integration --exit",
76
75
  "test": "npm run test:ts && npm run test:package",
77
- "coverage": "nyc npm run test:ts",
76
+ "coverage": "vitest run --coverage",
78
77
  "lint": "eslint",
79
78
  "lint:fix": "eslint --fix",
80
79
  "format": "prettier --write .",
@@ -86,25 +85,5 @@
86
85
  },
87
86
  "bugs": {
88
87
  "url": "https://github.com/krobipd/ioBroker.govee-smart/issues"
89
- },
90
- "nyc": {
91
- "include": [
92
- "src/**/*.ts"
93
- ],
94
- "exclude": [
95
- "src/**/*.test.ts"
96
- ],
97
- "extension": [
98
- ".ts"
99
- ],
100
- "require": [
101
- "ts-node/register"
102
- ],
103
- "reporter": [
104
- "text-summary",
105
- "html"
106
- ],
107
- "sourceMap": true,
108
- "instrument": true
109
88
  }
110
89
  }