Commit Graph
3266 Commits
Author SHA1 Message Date
dependabot[bot]andGitHub a60dfbc176 Bump org.apache.groovy:groovy-all from 5.0.3 to 5.0.4 (#5299)
Bumps [org.apache.groovy:groovy-all](https://github.com/apache/groovy) from 5.0.3 to 5.0.4.
- [Commits](https://github.com/apache/groovy/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 23:12:30 +01:00
jimtngandGitHub 2d4793a829 [YAML Thing Provider] Log warning on Thing config errors (#5282)
Catch IAE during Thing configuration loading to prevent
the entire file from failing. Errors are now logged as warnings
instead of throwing a full stack trace.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-01-22 17:16:20 +01:00
Jeff JamesandGitHub fbd0d987ea Enhancements and corrections in openapi spec (#5203)
- 'config' in RootUIComponent/UIComponent was of the wrong type in openapi spec
- getType accessor in UIComponent generated a property
- Updated the naming of data structures in openapi spec w/o the internal DTO nomenclature for consistency and simplicity

Also-by: Florian Hotze <dev@florianhotze.com>
Also-by: Wouter Born <github@maindrain.net>
Signed-off-by: Jeff James <jeff@james-online.com>
2026-01-22 14:49:20 +01:00
Florian HotzeandGitHub aff119cd19 IconServlet: Remove error & warn logging when client disconnected while sending response (#5257)
When a client disconnected while receiving the icon byte stream response,
an error and a warning were logged, making users worried:

```
2022-08-15 20:09:31.387 [ERROR] [ab.core.ui.icon.internal.IconServlet] - Failed sending the icon byte stream as a response: null
2022-08-15 20:09:31.390 [WARN ] [org.eclipse.jetty.server.HttpChannel] - /icon/autarky
java.lang.IllegalStateException: ABORTED
	at org.eclipse.jetty.server.HttpChannelState.sendError(HttpChannelState.java:915) ~[?:?]
    ...
```

IMO, there is no need to log at ERROR or WARN level in such cases,
so I decided to reduce to DEBUG logging.

The following script can be used to reproduce the above case:

```python
import socket
import struct

host = 'localhost'
port = 8080
path = '/icon/BatteryLevel?format=svg&anyFormat=true&state=94+%25&iconset=classic'
request = f"GET {path} HTTP/1.1\r\nHost: {host}\r\nConnection: keep-alive\r\n\r\n"

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))

# Send the request
s.sendall(request.encode())

# FORCE an immediate hard reset (RST)
# This ensures the server sees a connection failure while it's inside doGet
s.setsockopt(socket.SOL_SOCKET, socket.SO_LINGER, struct.pack('ii', 1, 0))
s.close()
```

Signed-off-by: Florian Hotze <dev@florianhotze.com>
2026-01-17 19:45:21 +01:00
Florian HotzeandGitHub d0c3b4a4ec [automation] Set config descriptions for SimpleRule & Improve null handling (#5273)
* SimpleRule: Improve code wrt null handling & annotations
* SimpleRule: Fix adding type and source config throws validation error in RuleRegistryImpl

Define those two as "default" config description as the UI uses those fields to display the source.

Fixes #5268.

Signed-off-by: Florian Hotze <dev@florianhotze.com>
2026-01-17 19:37:16 +01:00
Holger FriedrichandGitHub 6bbab4da83 Upgrade Mockito to 5.21, junit-jupiter to 5.14.2 (#5281)
* Upgrade Mockito from 5.19 to 5.21.
  Changelog: https://github.com/mockito/mockito/releases
* Upgrade junit-jupiter from 5.13.4 to 5.14.2
  Changelog: https://docs.junit.org/5.14.2/release-notes

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-17 19:24:25 +01:00
lolodomoandGitHub a2b15263a2 [YAML provider] Add INFO log for config TEXT param value not parsed a… (#5280)
* [YAML provider] Add INFO log for config TEXT param value not parsed as string

Related to openhab/openhab-webui#3696
Follow-up #5248

A log at level INFO is now displayed when a YAML file is loaded and contains a thing or channel configuration parameter of type TEXT whose value is not parsed as a string. This occurs when an unquoted number is provided. The log recommends enclosing the value in double quotes to prevent conversion.

For better consistency, the YAML provider is now also processing any BigDecimal value to convert it into a String type when the config paramater is of type TEXT.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2026-01-17 19:22:33 +01:00
NadaharandGitHub de14a998c5 Add time zone support for ZonedDateTime action inputs (#5235)
* Add time zone support for ZonedDateTime action inputs

Signed-off-by: Ravi Nadahar <nadahar@rediffmail.com>
2026-01-17 19:17:17 +01:00
jimtngandGitHub f4c50780d8 Allow setting a blank or null metadata value (#5283)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-01-17 19:13:57 +01:00
Holger FriedrichandGitHub 0d7d0702b6 Upgrade Swagger to 2.2.41 (#5269)
Upgrade Swagger from 2.2.35 to 2.2.41.
For changelog, see https://github.com/swagger-api/swagger-core/releases/tag/v2.2.41

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:53:20 +01:00
Holger FriedrichandGitHub 0e7d3ccef6 [upgradetool] Bump commons-cli to 1.11 (#5270)
Upgrade commons-cli from 1.10 to 1.11, see release note
https://commons.apache.org/proper/commons-cli/changes.html#a1.11.0

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:52:06 +01:00
Holger FriedrichandGitHub 062dc6e3db Upgrade pdfbox from to 3.0.1 (#5267)
* Upgrade pdfbox from to 3.0.1

Upgrade Apache pdfbox from 2.0.27 to 3.0.1.

* Exclude junit due to launcher incompatibility

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:51:05 +01:00
Holger FriedrichandGitHub dee36c4091 Upgrade hivemq-mqtt-client to 1.3.12 (#5265)
* Upgrade hivemq-mqtt-client from 1.3.9 to 1.3.12,
  changelog:
  https://github.com/hivemq/hivemq-mqtt-client/releases/tag/1.3.10
  https://github.com/hivemq/hivemq-mqtt-client/releases/tag/v1.3.11
  https://github.com/hivemq/hivemq-mqtt-client/releases/tag/v1.3.12
* Upgrade netty from 4.1.126 to 4.1.130,
  changelog:
  https://netty.io/news/2025/09/08/4-1-127-Final.html
  https://netty.io/news/2025/10/14/4-1-128-Final.html
  https://netty.io/news/2025/12/11/4-1-129-Final.html
  https://netty.io/news/2025/12/15/4-1-130-Final.html

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:45:27 +01:00
Holger FriedrichandGitHub 78020549a3 Upgrade json-path to 2.10.0 (#5271)
Upgrade com.jayway.jsonpath:json-path from 2.9.0 to 2.10.0,
including the following dependencies:

Upgrade net.minidev:accessors-smart and net.minidev:json-smart to from 2.5.0
to 2.6.0. Removes transitive CVE-2024-57699.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:44:09 +01:00
Holger FriedrichandGitHub ba668ddf1d Upgrade commons-pool2 to 2.13.1 (#5264)
Upgrade commons-pool2 from 2.12.1 to 2.13.1
Changelog:
https://commons.apache.org/proper/commons-pool/changes.html#a2.13.1
https://commons.apache.org/proper/commons-pool/changes.html#a2.13.0

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:43:14 +01:00
Holger FriedrichandGitHub fe04325b17 Upgrade logback to 1.5.24 (#5277)
* Upgrade logback from 1.5.18 to 1.5.24, see changelog
  https://logback.qos.ch/news.html#1.5.24

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:42:02 +01:00
Holger FriedrichandGitHub c983ecac1c Upgrade Gson to 2.13.2 (#5275)
* Upgrade Gson from 2.13.1 to 2.13.2, see
  https://github.com/google/gson/releases/tag/gson-parent-2.13.2

* Upgrade error_prone_annotations from 2.38.0 to 2.41.0

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:40:29 +01:00
Holger FriedrichandGitHub b17b3051a5 Upgrade jmdns to 3.6.3 (#5263)
Upgrades jmdns from 3.6.2 to 3.6.3.
Changelogs:
https://github.com/jmdns/jmdns/releases/tag/v3.6.3

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:38:44 +01:00
Holger FriedrichandGitHub a26c35abd8 Upgrade Jollyday to 1.8.1 (#5266)
Upgrades Jollyday from 1.5.4 to 1.8.1.

For release notes, see:

https://github.com/focus-shift/jollyday/releases

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-13 05:36:38 +01:00
Florian HotzeandHolger Friedrich bb02591ced RuleEngine: Fix startlevel trigger for DSL rules triggers twice during startup
Fixes #4395.
The issue was noticed for Rules DSL, but not for JS Scripting, because JS Scripting is loaded at a point where the rule engine is already started.

Signed-off-by: Florian Hotze <dev@florianhotze.com>
2026-01-11 23:25:17 +01:00
Florian HotzeandHolger Friedrich a70b9859f4 RuleEngine: Fix startlevel is always 40 when executing rule with StartlevelTrigger after change
Fixes #5177.

Signed-off-by: Florian Hotze <dev@florianhotze.com>
2026-01-11 23:25:17 +01:00
Holger FriedrichandGitHub 79277fafb7 Update license headers to 2026 (#5259)
* Update license headers to 2026

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-10 22:36:26 +01:00
Holger FriedrichandKai Kreuzer cb272c42fb Downgrade karaf-maven-plugin to 4.4.8
This is a workaround for apache/karaf#2218 and fixes #5234.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-10 22:35:06 +01:00
Holger FriedrichandKai Kreuzer 8bfcf0d6dd Upgrade Maven used by mvnw to 3.9.12
* Upgrade Maven from 3.9.11 to 3.9.12
  Release notes: https://maven.apache.org/docs/3.9.12/release-notes.html

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2026-01-10 22:35:06 +01:00
Дилян ПалаузовandGitHub bd4412dcd8 Karaf features: Update supported schema versions (#5254) 2026-01-08 22:30:34 +01:00
Florian HotzeandGitHub a90149b3a4 Add support for RegEx expressions in event WebSocket topic filter (#5116)
* Add support for RegEx expressions in event WebSocket topic filter

Closes #4600.

Signed-off-by: Florian Hotze <dev@florianhotze.com>
2026-01-06 18:30:51 +01:00
lolodomoandGitHub fdf8d6589c Normalize thing/channel config in response of /file-format/parse API (#5242)
This PR normalizes thing/channel configuration before producing the response.
It allows having proper types for config parameters in the JSON response of the API.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2026-01-06 18:13:38 +01:00
lolodomoandGitHub 58a0cc06b1 [YAML provider] Add special handling to thing/channel config param of… (#5248)
* [YAML provider] Add special handling to thing/channel config param of type text

Related to openhab/openhab-webui#3696

For configuration parameter of type text only, if the value in YAML is an unquoted number (value is then of type BigDecimal after loading and mapping in our DTO) and there is no decimal, we convert it to an integer and return a String from that integer.
Value 1 in YAML is converted into String "1"
Value 1.0 in YAML is converted into String "1"
Value 1.5 in YAML is untouched
Value "1" in YAML is untouched
Value "1.0" in YAML is untouched
Value "1.5" in YAML is untouched

All this is to avoid that 1 filled in YAML without quotes finally results in string "1.0" after configuration normalization.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2026-01-05 22:52:58 +01:00
Florian HotzeandGitHub 2ddd30929a MediaScriptScopeProvider: Minor code enhancement (#5246)
Signed-off-by: Florian Hotze <dev@florianhotze.com>
2026-01-05 10:41:07 +01:00
lolodomoandGitHub 448fe6516f [YAML] Use quotes for numbers stored as strings when generating YAML (#5241)
Related to openhab/openhab-webui#3696

We setup our YAML generator library to use quotes for strings when the value is a number.
Strings being not a number will still be generated without quotes.
It avoids later when parsing the generated YAML to retrieve a BigDecimal type instead of a String type when the DTO is defined with a Java Object type (that is the case for thing/channel configuration in particular).

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2026-01-05 09:13:32 +01:00
Cody CutrerandGitHub a259c44e3c Allow cross-binding bridges when generating code for a thing (#5244)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2026-01-03 22:03:55 +01:00
Holger FriedrichandKai Kreuzer 5f074e3c98 Remove JUnit @Execuion annotations
Remove @Execution annotations where JUnit default SAME_THREAD
is used.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-12-29 09:43:34 +01:00
Ravi NadaharandKai Kreuzer 452a68858c Upgrade SAT to 0.18.0
Signed-off-by: Ravi Nadahar <nadahar@rediffmail.com>
2025-12-29 09:43:34 +01:00
Ravi NadaharandKai Kreuzer 5a0477872b Suppress PMD rules SetDefaultTimeZone and SetDefaultLocale for selected tests
Ideally these should be rewritten to avoid relying on setting the defaults, but for now an effort is done to make sure that the initial value is restored after testing, and that
these tests don't run in parallel with other tests.

Signed-off-by: Ravi Nadahar <nadahar@rediffmail.com>
2025-12-29 09:43:34 +01:00
Дилян ПалаузовandGitHub bad5f94ef4 ChannelTransformation: log exact syntax errors in transformations (#5043) 2025-12-28 00:19:02 +01:00
joerg1985andGitHub 2fc75f61ba [persistence] use Instant instead of ZonedDateTime in Riemann sum methods (#5101)
Signed-off-by: Jörg Sautter <joerg.sautter@gmx.net>
2025-12-28 00:10:03 +01:00
Дилян ПалаузовandGitHub df64ab2a75 script: Remove unused ScriptEngine.executeScript (#5105) 2025-12-28 00:07:26 +01:00
Kai KreuzerandGitHub d4e6c97e67 Remove outdated import (#5228)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2025-12-27 23:50:33 +01:00
Дилян ПалаузовandGitHub 8e4324121c bundles/*core.model/bnd.bnd: Require-Bundle: remove dependency on xtend.lib (#5176) 2025-12-27 23:43:15 +01:00
Holger FriedrichandGitHub f499ee46e0 Upgrade Karaf to 4.4.9 (#5195)
* Upgrade Karaf to 4.4.9

Upgrade Karaf from 4.4.8 to 4.4.9.
This includes upgrades for the following libraries:
* jetty from 9.4.57.v20241219 to 9.4.58.v20250814
* pax-web from 8.33 to 8.34
* asm from 9.8 to 9.9
* bouncycastle/bcprov from 1.81 to 1.83
* classgraph from 4.8.180 to 4.8.184
* commons-cli from 1.9.0 to 1.10.0
* commons-io from 2.20.0 to 2.21.0
* commons-lang3 from 3.18.0 to 3.20.0
* cxf from 3.6.8 3.6.9
* guava from 33.4.8-jre to 33.5.0-jre
* jackson-annotations from 2.19.2 to 2.20
* jackson from 2.19.2 to 2.20.1
* jna from 5.17.0 to 5.18.1
* ws.xmlschema from 2.3.1 to 2.3.2
* xbean from 4.27 to 4.28
* xtext/xtend from 2.40.0 to 2.41.0

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-12-27 23:12:30 +01:00
Hans BöhmandGitHub 8277a33720 [uom] add metric area/volume units (#5184)
* add metric volume units

Signed-off-by: Hans Böhm <h.boehm@gmx.at>
2025-12-27 23:10:37 +01:00
Дилян ПалаузовandGitHub 6e3d23f9ce core.model.persistence/bnd.bnd: avoid exporting non-existent package (#5209) 2025-12-27 22:56:58 +01:00
Florian HotzeandGitHub cd5390993f [rest] Fix UIResource GET endpoints do not require auth if implicit user role is disabled (#5226)
Signed-off-by: Florian Hotze <dev@florianhotze.com>
2025-12-27 22:25:16 +01:00
dea60ca1e0 Switch to using asynchronous send with Jetty websockets (#5225)
Signed-off-by: Ravi Nadahar <nadahar@rediffmail.com>
Co-authored-by: Ravi Nadahar <nadahar@rediffmail.com>
2025-12-27 22:17:24 +01:00
lolodomoandGitHub bda83d8a85 Fix checkstyle findings in config.discovery.usbserial.windowsregistry (#5223)
Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2025-12-24 13:19:11 +01:00
lolodomoandGitHub 76da187921 [REST] Add missing media type for output of /links/orphans API (#5216)
Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2025-12-23 00:33:14 +01:00
dependabot[bot]andGitHub c9b3e7f8eb Bump org.codehaus.mojo:exec-maven-plugin from 3.6.2 to 3.6.3 (#5219)
Bumps [org.codehaus.mojo:exec-maven-plugin](https://github.com/mojohaus/exec-maven-plugin) from 3.6.2 to 3.6.3.
- [Release notes](https://github.com/mojohaus/exec-maven-plugin/releases)
- [Commits](https://github.com/mojohaus/exec-maven-plugin/compare/3.6.2...3.6.3)

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-23 00:32:13 +01:00
Holger FriedrichandGitHub 4084fec56b Prepare for OH 5.2.0 (#5220)
* Fix spotless after unleash
* Resolve itest runbundles

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-12-22 22:01:01 +01:00
openhab-bot f6c7ea6490 [unleash-maven-plugin] Preparation for next development cycle. 2025-12-22 15:00:02 +00:00
lolodomoandGitHub 19f5ad7569 [REST] Fix /links/orphans API (return of the result) (#5214)
Closes #5207

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2025-12-20 15:37:14 +01:00