OpenHAB 4

So, a major release normally has some new UI, structure, major functionality, etc.

But there does not seem to be an OH4 overview. And looking through long development task lists is not very helpful.

Am I looking in the wrong place? What would drive me to move to 4,0 when it releases?

Yes. See this openHAB 4.0 Milestone Builds - #2 by Kai (plus follow the links in that thread).

A major version change in OH is an opportunity to making breaking changes. In this case the big change is the move from the soon to be no longer supported Java 11 to Java 17. But because breaking changes are more acceptable at these times, changes that have been piling up since the previous release get made as well. Sometimes these are directed at add-on developers, other times at end users.

Most of the end user facing changes include:

  • New add-ons (add-ons are not back ported to previous versions of OH)
  • continued development of add-ons (only in exceptionally rare circumstances are changes back ported to the previous version, usually only for severe security problems or because of an external change that completely breaks things)
  • Transformations: can now be defined through the UI, written in any installed rules language, Profiles now support a separate SCRIPT transform depending on the direction of the update/command, inline transformation SCRIPTS are supported in any language
  • Items: Separation of display and Item state definition of units which leads to a more consistent treatment of units everywhere in OH (Persistence, rules, REST API), MainUI now shows custom Item metadata, MainUI will support a “Code” tab for Items, new ItemStateUpdatedEvent and GroupStateUpdatedEvent are unit aware
  • Blockly: now “compiles” to GraalVM JS Scripting using the helper library making the generated code much simpler and easier to read/understand, lots of new blocks
  • Developer Sidebar: Now supports a much more thorough search; e.g. you can find everywhere and Item is referenced
  • Logging: the log level for individual add-ons can be changed through MainUI
  • Persistence: Hopefully will also become configurable through MainUI

That’s a short list off the top of my head.

More is being added almost every day. OH 4 is probably not going to be as drastic of a change as there was between 1.x and 2.x (2 introduced the REST API, Things, and admin UI, whole new API for add-ons, etc.) and what was between 2.x and 3.x (dropped support for 1.x style add-ons, new admin and end user UI in MainUI, direct first class support for other programming languages beyond Rule DSL, etc.). In comparison, OH 3 to OH 4 is more of a refinement of OH 3 and the breaking changes are less drastic.

Edit: I forgot one for Items.

Ability to define your own custom semantic tags.

8 Likes

Thanks, Rich…

This topic was automatically closed 41 days after the last reply. New replies are no longer allowed.