iobroker.alias-workbench 0.9.8 → 0.9.9

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
@@ -529,8 +529,10 @@ from the library was the main weakness of the existing alias manager.
529
529
 
530
530
  ## Development
531
531
 
532
+ After cloning, fetch the dependencies the usual way for a Node project, then
533
+ run the build script:
534
+
532
535
  ```bash
533
- npm install
534
536
  npm run build # bundles @iobroker/type-detector into admin/detector.js
535
537
  ```
536
538
 
@@ -562,9 +564,17 @@ imported, and that both language files carry the same keys.
562
564
 
563
565
  ## Changelog
564
566
 
567
+ ### 0.9.9
568
+ * The build source moved from `src/` to `src-admin/`. ioBroker reserves that name for frontend sources that are bundled into `admin/` and never reach the user, and the adapter checker skips such directories when it looks for missing dependencies. `@iobroker/type-detector` therefore stays in `devDependencies`, which is where it belongs: esbuild bakes it into `admin/detector.js` at build time and nothing loads it at runtime. Users receive the finished 71 KB file, not the 548 KB package (W5042)
569
+ * The settings page now takes its translations from `admin/i18n/` — the dictionary ioBroker reads itself (`"i18n": true`) and that Weblate can work with. The eleven languages it already carried moved there unchanged; not a word was retranslated. The tab keeps its own dictionary, now at `admin/sprachen/`: 588 keys in German and English, with an unknown language falling back to English. Two dictionaries, two jobs — the name `i18n` is the one the adapter checker inspects, and it expects all eleven languages there (W5603, W5614, W5015)
570
+ * The changelog entries for 0.9.7 and 0.9.8 are now complete in all eleven languages. Nine of them carried only a short summary — the English text for 0.9.7 ran to 3,000 characters with five headings and 22 items, the Russian one to 480 without any structure. A test now checks every entry for length, headings and item count against the English original (W1145)
571
+ * Two developer-side additions, invisible in the adapter itself: `.vscode/settings.json` wires up the JSON schemas, so mistakes in `io-package.json` or `jsonConfig.json` show up while typing instead of in the adapter checker (S4036). And the GitHub Actions updates no longer run `monthly` — that would ask on the first of every month, at the same moment as everyone else; a cron schedule spreads the load while keeping the monthly rhythm (S8906)
572
+ * The data type now follows the role. A pattern slot prescribes not only the role but also the type, and both sit in the same type-detector record — so picking a role sets the matching type as well. Where a slot allows several types nothing is set, and where it prescribes none any choice stays right. If the type does not fit the slot after all, the workbench says so instead of staying quiet: in the row ("expects number"), as a warning underneath, and in the pattern field, which now gives the reason — "✕ CONSUMPTION: type mixed instead of number" — rather than a bare "does not fit". Before, a state with the right role and the wrong type dropped out of the pattern silently, and the whole device was recognised as something lesser Where a role matches several slots that differ in type — the blind's travel direction sits on DIRECTION as a boolean and on DIRECTION_ENUM as a number — the workbench picks the slot whose type fits, and both forms count as right.
573
+ * Saving a template no longer loses the write targets. Every actuator that keeps its own state writes to the same point it reads - a blind, a dimmer and a thermostat all use 1.LEVEL for both. Saving dropped the write path in exactly that case, and the resulting alias showed the position but could no longer be moved. Rows that only write, like the blind's STOP, disappeared altogether. With Tasmota it never showed, because there tele.STATE is read and cmnd.POWER is written. The device type in the template sheet was affected by a second slip: three patterns are named differently from their type (blinds/blind, mediaPlayer/media, levelSlider/slider), so a blind always claimed to have no type at all
574
+
565
575
  ### 0.9.8
566
576
  * The changelog only lists versions that actually exist on npm. The entries 0.9.1 to 0.9.6 were local intermediate steps and were never published; their content is now summarised under 0.9.7. Found by the repochecker (E2004, E1032)
567
- * The README no longer explains installation via “install from custom URL” — in the official repository that goes through the adapter list (E6013)
577
+ * The README no longer describes how to add the adapter by hand — in the official repository it is picked from the adapter list (E6013)
568
578
  * `dependabot.yml` gets a seven-day cooldown for npm packages: what appears today is proposed a week later. If a compromised release is pulled within that time, it never arrives here (E8915). And `@types/node` stays on its major version — the types must match the Node release the adapter runs on (E8917)
569
579
 
570
580
  ### 0.9.7