Commit Graph
160 Commits
Author SHA1 Message Date
Holger FriedrichandGitHub 8de8b4d4b4 Upgrade JUnit to 5.12.1 (#4642)
* Upgrade JUnit from 5.11.4 to 5.12.1
https://junit.org/junit5/docs/5.12.1/release-notes/#release-notes-5.12.1

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-03-16 22:40:06 +01:00
Wouter BornandGitHub 6bf59605bd Use Spotless sortpom plug-in (#4618)
This simplifies the sortpom configuration and also allows for checking and reformatting them using the spotless:check and spotless:apply Maven goals.

Signed-off-by: Wouter Born <github@maindrain.net>
2025-02-23 19:04:47 +01:00
Holger FriedrichandGitHub 4f64c8d37b Revert ConfigUtil::normalizeType and fix null annotations (#4608)
Partly reverts 8e597bde76.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-02-18 18:24:48 +01:00
Holger FriedrichandGitHub 0d84485623 Dependency upgrades: californium, cxf, junit, swagger (#4584)
* Upgrade swagger to 2.2.28

* Upgrade swagger from 2.2.15 to 2.2.28
For changelog, see https://github.com/swagger-api/swagger-core/releases
* Upgrade javassist from 3.29.2-GA to 3.30.2-GA

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>

* Upgrade cxf to 3.6.5

* Upgrade cxf from 3.6.4 to 3.6.5

Find the list of relevant changes here:
https://github.com/apache/cxf/blame/3.6.x-fixes/distribution/src/main/release/release_notes.txt

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>

* Upgrade junit to 5.11.4

* Upgrade junit from 5.10.0 to 5.11.4
* Upgrade junit-platform-* from 1.10.0 to 1.11.4

Release notes: https://junit.org/junit5/docs/5.11.4/release-notes/

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>

* Upgrade californium to 4.0.0-M2

* Upgrade californium from 2.7.4 to 4.0.0-M2
* Replace special OH built net.i2p.crypto.eddsa by BouncyCastle
* Upgrade slf4j from 2.0.12 to 2.0.16

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>

* Upgrade hamcrest to 3.0

* Upgrade hamcrest from 2.2 to 3.0

Release notes: https://github.com/hamcrest/JavaHamcrest/releases/tag/v3.0

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>

---------

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-02-13 15:23:21 +01:00
Holger FriedrichandWouter Born 6764b6d94c Upgrade Xtext/Xtend to 2.37.0
* Upgrade Xtext/Xtend from 2.36.0 to 2.37.0, see release notes:
  https://eclipse.dev/Xtext/releasenotes.html#/releasenotes/2024/11/19/version-2-37-0
  https://eclipse.dev/Xtext/xtend/releasenotes.html#/releasenotes/2024/11/19/version-2-37-0
* Upgrade dependencies
  * ecj from 3.36.0 to 3.39.0
  * gson from 2.10.1 to 2.11.0
  * classgraph to 4.8.176
  * guava from 3.33.0 to 3.33.1

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-01-26 15:15:29 +01:00
Holger FriedrichandWouter Born 4da70a2ed8 Upgrade Karaf from 4.4.6 to 4.4.7
* Sync runtime dependencies with Karaf 4.4.7, most notably:
   * PaxWeb 8.0.30
   * Jetty 9.4.57.v20241219
   * BouncyCastle 1.78.1
   * CXF 3.6.4
   * Jackson 2.18.2
   * JNA 5.16.0
   * JAXB 2.3.9
   * commons-io 2.17.0
   * commons-lang3 3.17.0
   * XBean 4.26
   * ASM 9.7.1
   * PaxLogging 2.2.8
 * Resolve itest runbundles

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-01-26 15:15:29 +01:00
Wouter BornandGitHub f00c7700cb Start license headers with /* instead of /** (#4544)
Prevents JavaDoc tooling issues because these tools check comments starting with `/**`.

Signed-off-by: Wouter Born <github@maindrain.net>
2025-01-07 21:48:56 +01:00
Holger FriedrichandGitHub 40d079ae80 Java 21 language features (#4535)
* Java 21 language features

* use getFirst and getLast methods
* replace new Locale by Locale.of
* replace Paths.get by Path.of
* use ThreadLocalRandom.current().nextDouble()
* add @Serial annotations

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2025-01-06 23:22:43 +01:00
Wouter BornandGitHub 979e4a7409 Update license headers to 2025 (#4532)
Signed-off-by: Wouter Born <github@maindrain.net>
2025-01-01 16:40:04 +01:00
Wouter BornandGitHub db72021460 Update Eclipse files (#4514)
Signed-off-by: Wouter Born <github@maindrain.net>
2024-12-24 07:02:47 +01:00
Wouter BornandGitHub 9f0b8d48fe Revert LinkedTransferQueue high CPU usage workaround (#4499)
Reverts the workaround #3756 that was introduced for JDK-8301341 because it is fixed in OpenJDK 21

Signed-off-by: Wouter Born <github@maindrain.net>
2024-12-17 00:46:30 +01:00
Holger FriedrichandGitHub 8d837f9823 Prepare for OH 5.0.0 (#4496)
* Prepare for OH 5.0.0

* Switch to 5.0.0-SNAPSHOT
* Fix spotless after unleash
* resolve itest runbundles
* Fix linux-specific pom

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-12-15 18:49:23 +01:00
openhab-bot 0f2e56f39d [unleash-maven-plugin] Preparation for next development cycle. 2024-12-15 11:41:19 +00:00
Jacob LaursenandGitHub b31ff66bba [core] Switch DateTimeType to Instant internally for consistent time-zone handling (#3583)
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
2024-12-08 16:06:29 +01:00
Wouter BornandGitHub fa29f52a99 Update bnd to 7.1.0 (#4464)
For release notes, see:

https://github.com/bndtools/bnd/wiki/Changes-in-7.1.0

Signed-off-by: Wouter Born <github@maindrain.net>
2024-11-30 21:31:35 +01:00
Holger FriedrichandGitHub 660102e3f9 Upgrade XStream to 1.4.21 (#4457)
* Upgrade XStream from 1.4.20 to 1.4.21, fixes CVE-2024-47072.
  See changelog at https://x-stream.github.io/changes.html#1.4.21

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-11-18 23:34:06 +01:00
Kai KreuzerandGitHub 21e605d212 Apply spotless after release, resolve bundles (#4301)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2024-07-07 23:22:27 +02:00
openhab-bot 07e23eac3c [unleash-maven-plugin] Preparation for next development cycle. 2024-07-07 16:05:56 +00:00
Holger FriedrichandGitHub 873bb53cbc Upgrade Karaf from 4.4.5 to 4.4.6 (#4181)
* Upgrade Karaf from 4.4.5 to 4.4.6

* Sync runtime dependencies with Karaf 4.4.6, most notably:
  * Jetty 9.4.54.v20240208, addresses CVE-2024-22201
  * Pax Logging 2.2.7
  * Pax Web 8.0.27
  * ASM 9.7
  * BouncyCastle 1.77
* Upgrade xtext to 2.35.0.M1
* Resolve itest runbundles

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-05-20 17:42:04 +02:00
Holger FriedrichandGitHub 3850599163 Upgrade to Karaf 4.4.5 and Xtext 2.34 (#4133)
* Upgrade to Karaf 4.4.5 and Xtext 2.34

Upgrade Karaf from 4.4.4 to 4.4.5:
* Sync runtime dependencies with Karaf 4.4.5, most notably:
  * Jetty 9.4.53.v20231009
  * JNA 5.14.0
  * Pax Logging 2.2.6
  * Pax Web 8.0.24
  * ASM 9.6
* Resolve itest runbundles

Upgrade Xtext from 2.32 to 2.34
* Sync depencencies, most notably:
  * Guava 33.0.0
  * classgraph 4.8.165 changing provider to io.github.classgraph
* Migrate old Xtext generator xtext.generator to xtext.xtext.generator
  as xtext.generator has been removed from Xtext, affecting
  org.openhab.core.model.lazygen

* resolve runbundles
* Remove org.openhab.core.model.lazygen
  No longer in use since 2017, see eclipse-archived/smarthome#4122.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-03-17 09:41:15 +01:00
joerg1985andGitHub 094e4a6e04 [rest] stream json without starting a new thread (#4136)
Signed-off-by: Jörg Sautter <joerg.sautter@gmx.net>
2024-03-10 09:46:39 +01:00
Florian HotzeandGitHub 81805ae6d9 [rest] Set editable for members of an item (#4118)
* [rest] Set editable for members of an item

Required by the UI.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2024-03-03 10:14:32 +01:00
dependabot[bot]andGitHub d994c136db Bump com.jayway.jsonpath:json-path from 2.8.0 to 2.9.0 in /bom/test (#4059)
Bumps [com.jayway.jsonpath:json-path](https://github.com/jayway/JsonPath) from 2.8.0 to 2.9.0.
- [Release notes](https://github.com/jayway/JsonPath/releases)
- [Changelog](https://github.com/json-path/JsonPath/blob/master/changelog.md)
- [Commits](https://github.com/jayway/JsonPath/compare/json-path-2.8.0...json-path-2.9.0)

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-04 10:18:12 +01:00
Wouter BornandGitHub 6495f4e256 Upgrade Jollyday to 0.23.2 (#4033)
Upgrades Jollyday 0.5.10 (de.jollyday) to 0.23.2 of a more actively maintained fork (de.focus-shift).

* This adds many missing holidays.
* Also removes the workaround for the Danish Great Prayer Day introduced by #3573.

For release notes, see:

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

Fixes #3544

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-14 15:19:15 +01:00
Wouter BornandGitHub 2babea4c9a Update license headers to 2024 (#4011)
Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 21:20:34 +01:00
Wouter BornandGitHub 10c0cf8211 Simplify assertions (#3996)
* Simplify assertions

Using the appropriate assertion methods results in less and easier to read code as well as better error messages when assertions fail.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 12:24:50 +01:00
J-N-KandGitHub a5316f920e Refactor ThingHandlerService to an OSGi component prototype (#3957)
Also-by: Connor Petty <mistercpp2000+gitsignoff@gmail.com>
Signed-off-by: J-N-K <github@klug.nrw>
2024-01-02 13:09:51 +01:00
Holger FriedrichandGitHub 839ba1ab4c Apply spotless after release, resolve bundles (#3953)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-22 23:14:28 +01:00
openhab-bot 3b279587b1 [unleash-maven-plugin] Preparation for next development cycle. 2023-12-22 11:48:43 +00:00
Wouter BornandGitHub 81f14c9df1 Upgrade logback-classic to 1.3.14 (#3935) 2023-12-19 23:26:22 +01:00
Wouter BornandGitHub 09b3160a55 Simplify code using Stream.toList (#3831)
Stream.toList was introduced in Java 16 and creates an unmodifiable List so it can be used to simplify code whenever the List is not expected to be modified.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 09:20:08 +02:00
Wouter BornandGitHub eff85c6470 Upgrade JUnit to 5.10.0 (#3832)
Upgrades JUnit from 5.9.2 to 5.10.0.

For release notes, see:

https://junit.org/junit5/docs/5.10.0/release-notes/#release-notes-5.10.0

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-07 20:34:47 +02:00
Wouter BornandGitHub fb3d4e805d Update bnd to 7.0.0 (#3828)
For release notes, see:

https://github.com/bndtools/bnd/wiki/Changes-in-7.0.0

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-06 18:45:20 +02:00
Wouter BornandGitHub 02f6c5c3e3 Upgrade CXF to 3.6.2 (#3826)
Upgrades CXF from 3.6.1 to 3.6.2.

For release notes, see:

https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310511&version=12353311

It has a fix to address OOM issues when using HTTP clients:

https://issues.apache.org/jira/browse/CXF-8885

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-04 11:46:54 +02:00
Wouter BornandGitHub fffa968263 Upgrade Xtext/Xtend to 2.32.0, LSP4J to 0.21.0 (#3817)
Upgrades Xtext and its dependencies to:

* Xtext/Xtend 2.32.0
* LSP4J 0.21.0
* GSON 2.10.1
* Guava 32.1.2
* Guice 7.0.0

For release notes, see:

https://eclipse.dev/Xtext/releasenotes.html#/releasenotes/2023/08/27/version-2-32-0

Fixes #3321

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-01 22:04:27 +02:00
Wouter BornandGitHub d4a433a4ce Upgrade to Karaf 4.4.4 (#3814)
* Sync runtime dependencies with Karaf 4.4.4, most notably:
  * Jetty 9.4.52.v20230823
  * JNA 5.13.0
  * SLF4J 2.0.6
  * Pax Logging 2.2.3
  * Pax Web 8.0.22
* Resolve itest runbundles
* Use new Pax Web features to simplify dependency management
* Add specs features because Pax Web now depends on "asm"

Signed-off-by: Wouter Born <github@maindrain.net>
2023-09-29 20:23:31 +02:00
Wouter BornandGitHub e1d2b88398 Update directory-watcher to 0.18.0 (#3790)
Updates the directory-watcher from 0.17.1 to 0.18.0.

This version has some bug fixes/improvements, see:

https://github.com/gmethvin/directory-watcher/compare/v0.17.1...v0.18.0

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-30 22:51:25 +02:00
Wouter BornandGitHub 9e1dbb6435 Update json-path to 2.8.0 (#3772)
Updates json-path from 2.4.0 to 2.8.0

This addresses:

* CVE-2021-27568
* CVE-2021-31684
* CVE-2023-1370

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-26 15:08:46 +02:00
Wouter BornandGitHub 7743e9f9ab Update CXF to 3.6.1 (#3770)
Updates CXF from 3.4.5 to 3.6.1

For some recent release notes, see:

* [3.5.0](https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310511&version=12348382)
* [3.6.0](https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310511&version=12351469)
* [3.6.1](https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310511&version=12353191)

This upgrade addresses:

* CVE-2022-46363
* CVE-2022-46364

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-21 21:23:09 +02:00
Wouter BornandGitHub c0b4ccfd7c Update Jackson to 2.15.2 (#3768)
Updates Jackson from 2.14.1 to 2.15.2

For release notes, see:

https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15

This upgrade addresses:

* CVE-2022-1471

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-21 10:22:27 +02:00
J-N-KandGitHub 04eb32185c Bump UoM libraries to 2.2 (#3758)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-08-18 21:38:43 +02:00
Wouter BornandGitHub aef57edd73 Use workaround to fix high CPU usage by LinkedTransferQueue (#3756)
This is a workaround for JDK-8301341 by using the Java 11 LinkedTransferQueue with the QueueingThreadPoolExecutor in the Core and jUPnP.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-14 10:37:20 +02:00
Wouter BornandGitHub 3b91692be1 Fix build (#3726)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-07-24 09:02:01 +02:00
Kai Kreuzer 5692232e2b Apply spotless
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2023-07-24 01:11:37 +02:00
openhab-bot fd93f0a766 [unleash-maven-plugin] Preparation for next development cycle. 2023-07-23 17:14:35 +00:00
J-N-KandGitHub 64fd046266 Bump spifly to 1.3.6 and asm to 9.4 to support records (#3658)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-06-23 10:46:43 +02:00
Yannick SchausandGitHub 6e83d3f8de "Cacheability" option for critical REST resources (#3335)
* Closes #3329.

This implements a new optional `cacheable` parameter for these REST endpoints:
- `/rest/items`
- `/rest/things`
- `/rest/rules`

When this parameter is set, a flat list of all elements excluding
non-cacheable fields (e.g. "state", "transformedState", "stateDescription",
"commandDescription" for items, "statusInfo", "firmwareStatus",
"properties" for things, "status" for rules) will be retrieved along with
a `Last-Modified` HTTP response header. When unknown, the Last-Modified
header will be set to the date of the request.

Also only when this parameter is set, and a `If-Modified-Since` header is
found in the request, that header will be compared to the last known
modified date for the corresponding cacheable list. The last modified date
will be reset when any change is made on the elements of the underlying
registry. If the `If-Modified-Since` date is equal or more recent than the
last modified date, then a 304 Not Modified response with no content will
be served instead of the usual 200 OK, informing the client that its
cache is still valid at the provided date.

All other request parameters will be ignored except for "metadata" in the
`/rest/items` endpoint. When a metadata selector is set, the resulting
item list will be considered like a completely different resource, i.e.
it will have its own last modified date. Regarding metadata, the approach
to invalidating last modified dates is very conservative: when any metadata
is changed, all cacheable lists of items will have their last modified date
reset even if the change was in a metadata namespace that wasn't requested.

This also implements the abovedescribed behavior for the
`/rest/ui/components/{namespace}` endpoint, but no `cacheable` parameter
is necessary. The last modified date is tracked by namespace.

Signed-off-by: Yannick Schaus <github@schaus.net>
2023-06-15 20:16:14 +02:00
Wouter BornandGitHub 0894d25448 Upgrade JUnit to 5.9.2 and Mockito to 4.11.0 (#3450)
For release notes, see:

* https://junit.org/junit5/docs/current/release-notes/#release-notes-5.9.2
* https://github.com/mockito/mockito/releases/

Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-12 20:47:54 +01:00
Wouter BornandGitHub 0c792ec89a Upgrade XStream to 1.4.20 (#3446)
This addresses CVE-2022-40151 and CVE-2022-41966, see:

https://x-stream.github.io/changes.html#1.4.20

This version also fixes an issue with closing streams so the workaround in GenerateDefaultTranslationsMojoTest is no longer needed.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-12 12:22:33 +01:00
Wouter BornandGitHub ec3af50f11 Upgrade to Karaf 4.4.3 (#3252)
* Sync runtime dependencies with Karaf 4.4.3, most notably:
  * Jetty 9.4.50.v20221201
  * Pax Logging 2.2.0
  * Pax Web 8.0.15
* Use OSGi R8 as compile dependency
* Rework Servlets to use Http Whiteboard annotations in favor of proprietary `org.openhab.core.io.http.servlet` classes
* Resolve itest runbundles

Also-by: Jan N. Klug <github@klug.nrw>

Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-01 13:09:07 +01:00