Skip to content

v5.0.0 #2270

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 12 commits into from
Closed

v5.0.0 #2270

wants to merge 12 commits into from

Conversation

bwp91
Copy link
Contributor

@bwp91 bwp91 commented Dec 8, 2024

⚠️ Breaking Changes

  • This version of the Homebridge UI will drop support for:
    • Node.js v16 and earlier, so please update to v18 or v20 or v22 - more info on updating
    • Raspberry Pi devices running on the armv6 architecture (like the Pi 1 and Pi Zero) - please update your hardware
    • Instances using pnpm as the package manager - consider updating your Homebridge instance to use npm instead - more info on updating

⚠️ Plugin Config Validation

This version of Homebridge UI adds validation to plugin config screens. This does not apply to manual plugin configuration (with raw JSON).

  • If your entered configuration is valid, then you will see a green tick by the save button.
  • If your configuration is not valid, then you will see an orange warning triangle by the save button. You will still be allowed to save the configuration.
  • A plugin can enforce strict validation:
    • For plugin developers: if you want to enforce a valid configuration, you can add "strictValidation": true as a root property to your config.schema.json file.
    • For users: if the plugin developer has enabled this setting and your configuration is invalid, then you will see a red warning triangle by the save button. You will not be allowed to save the configuration until it is valid.

If you have a plugin which can be configured multiple times, then an icon will be shown on each configuration block.

For custom UIs developed using the @homebridge/plugin-ui-utils package, the Save button will be enabled at all times by default.
In @homebridge/plugin-ui-utils@v2.0.0, two new methods have been added which allow you to disable and enable the Save button:

  • homebridge.disableSaveButton()
  • homebridge.enableSaveButton()

When the button is enabled, the validation icon will be visible showing the status of the configuration. When the button is disabled, the validation icon will be hidden.
If your plugin implements these methods, but the user is on an older version of the Homebridge UI, then the methods will have no effect, but not throw an error. The Save button will always be enabled.

Plugin developers:

  • Please do not rely on this validation and assume that a user's configuration will be valid
  • All plugins should still validate a configuration when the plugin is started
  • Remember that some users do not use the UI at all, and other users may prefer to configure using raw JSON rather than config screens
  • Please report any cases where the validation is not working as expected

UI Changes

  • updates to the fi.json language file (Update fi.json #2253) (@l1500s)
  • implement and allow switching to scoped plugins
  • add plugin config validation functionality
  • refactor status and child bridge widgets
  • update default dashboard layout

Other Changes

  • retire use of pnpm and code references
  • bump the default node version from 20 to 22
  • make terminal enabled by default on new macOS hb-service installs
  • update node pty beta v0.12.0-beta
  • update angular from v18 to v19
  • improvements to GH actions and build processes (@NorthernMan54)
  • updated dependencies

Homebridge Dependencies

  • @homebridge/hap-client @ v2.0.5
  • @homebridge/node-pty-prebuilt-multiarch @ v0.12.0-beta
  • @homebridge/plugin-ui-utils @ v2.0.0

@github-actions github-actions bot added the latest Related to Latest Branch label Dec 8, 2024
@bwp91 bwp91 closed this Dec 13, 2024
@bwp91 bwp91 deleted the beta-5.0.0 branch December 13, 2024 08:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
latest Related to Latest Branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants