Commit Graph
100 Commits
Author SHA1 Message Date
Wouter BornandGitHub 81f14c9df1 Upgrade logback-classic to 1.3.14 (#3935) 2023-12-19 23:26:22 +01:00
Wouter BornandGitHub 3624682c1e Add JavaDoc build badge and reconfigure plugin to indicate JavaDoc warnings/errors (#3886)
* Add JavaDoc build badge
* Add dependency to upgradetool to fix remaining JavaDoc error
* Fail JavaDoc build on JavaDoc warnings/errors
* Upgrade maven-javadoc-plugin to fix it failures even if there are no warnings/errors
* Enable legacyMode to workaround JPMS issues in newer maven-javadoc-plugin versions

Signed-off-by: Wouter Born <github@maindrain.net>
2023-11-26 21:26:19 +01:00
Wouter BornandGitHub 7af02598ef Small code cleanup (#3873)
* Removes hyphens from JavaDoc parameters
* Fixes a few 'exists' grammar mistakes

Signed-off-by: Wouter Born <github@maindrain.net>
2023-11-15 16:47:58 +01:00
Wouter BornandGitHub f2c20af944 Improve FolderObserver ignored paths handling (#3856)
The FolderObserver needs to make sure that paths are properly handled for any parsers that are added at any moment by other threads during activation.

Fixes #3784
Fixes #3793

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-21 09:23:07 +02:00
Wouter BornandGitHub 783c57cbb9 Use 'uid' instead of 'UID' as method parameters (#3840)
Using 'UID' is confusing as method parameter because it can be mistaken for some kind of constant while reading code.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 21:39:47 +02:00
Wouter BornandGitHub e8e1c9fe73 Simplify code that creates List, Map and Set objects (#3836)
Simplifies the code by using List.of, List.copyOf etc. where possible which results in less code and imports.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 18:00:00 +02:00
Wouter BornandGitHub 8c8f4112ea Fix missing ALPN bundles (#3839)
The pax-web-jetty-http2-jdk9 feature should not have been removed in #3814.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 17:57:47 +02: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 93d80e36b9 Remove unused javax.inject annotations (#3827)
AFAIK these annotations are not used when using declarative services.

I stubled upon these annotations when feature validation failed while creating #3817.
Xtext now uses Guice 7 which is using jakarta.inject imports.

Only si.uom:si-units:2.1 still imports javax.inject but it will also switch to jakarta.inject when 2.2 gets released.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-04 22:10:53 +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 c82f8fcec2 Upgrade hivemq-mqtt-client to 1.3.3, Netty to 4.1.99.Final (#3824)
Upgrades:

* hivemq-mqtt-client from 1.2.2 to 1.3.3
* Netty from 4.1.92.Final to 4.1.99.Final

For all fixes and improvements of these upgrades, see:

* https://github.com/hivemq/hivemq-mqtt-client/releases/
* https://netty.io/news/index.html

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-03 13:20:52 +02:00
Wouter BornandGitHub 012d7a034f FolderObserver improvements (#3821)
* Mark extensions as ready in addModelsToRepo only if parser was availabile
* Store valid extensions using Set instead of List
* Use java.nio where possible
* Add more debug logging
* Cleanup and simplify code

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-03 13:19:26 +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 f6435ec132 Fix countries and connection AddonInfo issues (#3797)
Fixes the following:

* connection and countries details missing for some AddonServices
* missing connection getter on AddonInfo
* countries lists has empty String when when countries info is missing

Related to #3795

Signed-off-by: Wouter Born <github@maindrain.net>
2023-09-09 12:15:03 +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 c39d15ade6 Cleanup code (#3787)
This code cleanup fixes various warnings in Eclipse.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-30 22:50:17 +02:00
Wouter BornandGitHub d7fbb94490 Update Swagger to 2.2.15 (#3789)
Updates Swagger from 2.1.9 to 2.2.15.

This adds OpenAPI v3.1 support.

For more release notes see:

https://github.com/swagger-api/swagger-core/releases

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-30 22:39:21 +02:00
Wouter BornandGitHub e765af06cb Upgrade Maven and plug-ins (#3788)
* Use Maven 3.9.4 with GitHub Actions CI
* Upgrade Maven plug-ins

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-30 13:29:34 +02:00
Wouter BornandGitHub f8b52ea3f6 Use JUnit TempDir which automatically removes temp dirs (#3786) 2023-08-28 22:30:56 +02:00
Wouter BornandGitHub 9cc7b58ac0 Fix linuxsysfs itest failing when serial device is connected (#3782)
This fixes that some linuxsysfs tests always fail on Linux whenever a real serial device is connected.
Due to the changes in #3290 the tests would also scan the actual devices causing tests to fail due to unexpected results.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-27 11:16:04 +02:00
Wouter BornandGitHub 5daf4ff076 Fix SAT and null analysis issues (#3781)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-27 11:15:15 +02:00
Wouter BornandGitHub 8c36d57692 Fix compilerArguments deprecation warnings (#3780)
This fixes the following warnings:

```
[WARNING] Parameter 'compilerArguments' is deprecated: use {@link #compilerArgs} instead.
```

Related to openhab/openhab-core#3512

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-27 11:07:58 +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
Wouter BornandGitHub d909543415 Upgrade org.bouncycastle:bcpkix-jdk15on (#3765) 2023-08-19 10:54:57 +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 04105c1b1a Link to Java 17 documentation (#3750)
This prevents issues because older documentation may not apply to Java 17.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-12 10:19:48 +02:00
Wouter BornandGitHub 17e9cf3850 ZipException workarounds (#3747)
* Use Karaf 4.4.3 compile dependency
* Disable this feature in itests

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-11 14:10:00 +02:00
Wouter BornandGitHub 3b91692be1 Fix build (#3726)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-07-24 09:02:01 +02:00
Wouter BornandGitHub 3396ff7758 Use Eclipse formatter 4.25 with Spotless (#3710)
Fixes #3515

Signed-off-by: Wouter Born <github@maindrain.net>
2023-07-18 09:03:16 +02:00
Wouter BornandGitHub db97610111 Replace StringBuffer usages with StringBuilder (#3668)
See: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/StringBuilder.html

> This class provides an API compatible with StringBuffer, but with no guarantee of synchronization.
> This class is designed for use as a drop-in replacement for StringBuffer in places where the string buffer was being used by a single thread (as is generally the case).
> Where possible, it is recommended that this class be used in preference to StringBuffer as it will be faster under most implementations.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-06-25 17:24:46 +02:00
Wouter BornandGitHub 3c6d855d4b Remove redundant public and abstract modifiers from interfaces (#3560)
* Remove redundant public modifiers from interfaces
* Remove redundant abstract modifiers from interfaces

Signed-off-by: Wouter Born <github@maindrain.net>
2023-04-20 20:22:58 +02:00
Wouter BornandGitHub 4851bfbcae Fix recently introduced SAT issues (#3516)
* Fix recently introduced SAT issues

Signed-off-by: Wouter Born <github@maindrain.net>
2023-04-01 17:18:22 +02:00
Wouter BornandGitHub b745d70d6d Add issue and pull request templates and configuration (#3463)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-04-01 14:39:25 +02:00
Wouter BornandGitHub 41ff466d65 Upgrade maven-surefire-plugin to 3.0.0 (#3514)
This fixes deprecation warnings when runnings tests with Maven 3.9.x:

`[WARNING] Parameter 'localRepository' is deprecated core expression; Avoid use of ArtifactRepository type. If you need access to local repository, switch to '${repositorySystemSession}' expression and get LRM from it instead.`

See: https://issues.apache.org/jira/browse/SUREFIRE-2154

Related to #3512

Signed-off-by: Wouter Born <github@maindrain.net>
2023-04-01 13:36:43 +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 56f5550e6b Fix broken ProxyServletService (#3436)
Reverts the partially working Whiteboard config changes of #3252 back to a working implementation using the HttpService.
The configurable threading makes this a non-trivial Servlet for use with the Whiteboard.

Fixes openhab/openhab-webui#1782

Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-08 20:07:59 +01:00
Wouter BornandGitHub ac5bbb90b8 Upgrade JUPnP to 2.7.0 (#3421)
Fixes openhab/openhab-distro#1473

Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-05 09:55:06 +01:00
Wouter BornandGitHub d154c8bcf9 Remove org.openhab.core.addon.sample left-over (#3413)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-02 11:29:19 +01:00
Wouter BornandGitHub 59c5133815 Add Eclipse Add-on Service (#3406)
This service provides add-on information when debugging in Eclipse so it is possible to add Things based on the installed bindings and configure installed add-ons in the UI.
Replaces the Sample Add-on Service.

Also shows the "Add-on Management" configuration which allows for configuring if incompatible add-ons are included.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-03-02 07:41:49 +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
Wouter BornandGitHub 07d09c5a7a Update Jackson to 2.14.1 (#3284)
Updates Jackson from 2.12.7 to 2.14.1

For release notes, see:

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

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-30 22:46:51 +01:00
Wouter BornandGitHub 5e23b0e231 Fix Marketplace add-on range pattern matching (#3288)
* Fix Marketplace add-on range pattern matching

With this fix it will use the correct string for pattern matching add-on version ranges introduced in #2811.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-30 20:32:00 +01:00
Wouter BornandGitHub a3dc57784a Remove wrong DataAmount units (#3261)
These wrong DataAmount units were added in #3208 for backwards compatibility.
In OH4 we can clean them up because this major version allows for breaking changes.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-23 23:51:28 +01:00
Wouter BornandGitHub abbba4adc7 Use JavaSE-17 JVM (#3263)
For some reason Eclipse did not update these BOM .classpath files in #3250.
Related to #2994

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-23 16:44:52 +01:00
Wouter BornandGitHub 80770161ac Fix several compiler warnings (#3260)
Fixes a deprecation, unused imports and some raw type warning.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-23 16:41:46 +01:00
Wouter BornandGitHub 4a49cb419c Add missing new line to org.openhab.core.storage.json.tests/itest.bndrun (#3259)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-23 12:28:36 +01:00
Wouter BornandGitHub 0a755e8f08 Use HTTPS with website URL in pom.xml (#3256)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-22 21:43:38 +01:00
Wouter BornandGitHub 7888da1684 Fix some recently introduced SAT and NPE issues (#3251)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-22 15:11:49 +01:00
Wouter BornandGitHub 687688db7e Update Eclipse .classpath files (#3250)
Also adds some missing files for recently added projects.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-22 14:14:35 +01:00
Wouter BornandGitHub 24cc559fa4 GitHub Actions workflow upgrades (#3218)
* Upgrade actions to fix deprecation warnings
* Use ubuntu-22.04 for builds

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-11 17:35:54 +01:00
Wouter BornandGitHub 2cb8f148ef Upgrade Californium to 2.7.4 (#3147)
For release notes see:

* https://projects.eclipse.org/projects/iot.californium/releases/2.7.4

Signed-off-by: Wouter Born <github@maindrain.net>
2022-12-05 17:44:17 +01:00
Wouter BornandGitHub 7b0b70ca4a Improve binding archetype for Crowdin usage (#3089)
With these changes the proper translations file will be created.
The updated comments should prevent review comments and rework.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-09-23 18:15:50 +02:00
Wouter BornandGitHub 149a9e9ee1 Upgrade Californium to 2.7.3 (#3085)
Upgrades Californium from 2.0.0 to 2.7.3 which has many fixes.

For release notes see:

* https://projects.eclipse.org/projects/iot.californium/governance

Replaces #3061, #3062

Signed-off-by: Wouter Born <github@maindrain.net>
2022-09-21 07:48:58 +02:00
Wouter BornandGitHub f69f6fa618 Add additional MqttBrokerConnectionConfig options (#3068)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-08-25 21:37:31 +02:00
Wouter BornandGitHub 9984237ce8 Add default translations for automation module types (#3035)
These were generated using openhab/openhab-core#2966.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-07-10 09:27:40 +02:00
Wouter BornandGitHub 03b13bd31e Move Eclipse m2e configuration to a profile (#3034)
This prevents the following warnings when executing: `mvn i18n:generate-default-translations`

[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.eclipse.m2e:lifecycle-mapping:1.0.0: Plugin org.eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be resolved: org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 was not found in https://openhab.jfrog.io/openhab/libs-snapshot during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of openhab-snapshot has elapsed or updates are forced

Signed-off-by: Wouter Born <github@maindrain.net>
2022-07-09 17:38:12 +02:00
Wouter BornandGitHub ca1711a2ea Upgrade i18n-maven-plugin to 3.3.0 (#3019)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-06-28 21:11:05 +02:00
Wouter BornandGitHub 6b224b7002 GitHub Actions workflow improvements (#3015)
* Upgrade actions to latest versions
* Upgrade Maven to 3.8.6
* Use Temurin JDK instead of Zulu JDK

The Temurin JDK is preinstalled in the [Ubuntu image](https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md#java) whereas the Zulu JDK first need to be downloaded.
It should also perform better because the Temurin JDK is linked to glibc 2.12 whereas the Zulu JDK is linked to glibc 2.5.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-06-26 17:15:26 +02:00
Wouter BornandGitHub 5545004e09 Fix null analysis error in ThingMigrationOSGiTest (#3008)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-06-20 22:10:24 +02:00
Wouter BornandGitHub 916b6e9db1 Remove redundant @NonNullByDefault In Integration test (#3009)
Nullness default is redundant with a default specified for the enclosing type AutomationIntegrationJsonTest.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-06-20 22:09:30 +02:00
Wouter BornandGitHub 2b4e5af21e Revert "Exclude org.osgi.service.prefs to fix build (#3001)" (#3005)
This reverts commit af0566af95.
2022-06-17 12:50:35 +02:00
Wouter BornandGitHub af0566af95 Exclude org.osgi.service.prefs to fix build (#3001)
Someone added a dependency on a non-existing artifact in the new Equinox release and now many builds are broken because Xtext defines a version range for Equinox 😞, see:

* https://github.com/eclipse-equinox/equinox.bundles/issues/54
* https://github.com/eclipse/xtext/issues/2077

Signed-off-by: Wouter Born <github@maindrain.net>
2022-06-15 22:24:21 +02:00
Wouter BornandGitHub 226427d24e Upgrade SAT to 0.13.0 (#2978)
See the [0.13.0](https://github.com/openhab/static-code-analysis/milestone/20?closed=1) milestone for all changes in this release.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-05-24 14:04:37 +02:00
Wouter BornandGitHub 86ee4dc2b5 Fix null type mismatch errors (#2976)
This fixes the null type errors in Eclipse which were introduced by #2906.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-05-23 16:30:08 +02:00
Wouter BornandGitHub 4ab0f83e83 Upgrade to Karaf 4.3.7 (#2934)
* Syncs dependencies with Karaf 4.3.7
* Resolves itest runbundles for these new dependencies

Signed-off-by: Wouter Born <github@maindrain.net>
2022-04-28 22:00:16 +02:00
Wouter BornandGitHub 8f7db68d1a Fix a few SAT findings (#2936)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-04-27 23:09:37 +02:00
Wouter BornandGitHub 13d2edb43e Add spaces to Magic service labels (#2935)
This adds some spaces to the Magic service labels so they look nicer in UIs.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-04-27 23:06:29 +02:00
Wouter BornandGitHub 05fdc81b27 Improve test stability and OS compatibility (#2878)
This fixes the build being broken when building on Windows.
It also contains many fixes for timing issues which seem to impact macOS and Windows more than Linux.

* Fix .gitattributes and add *.xml_gen to fix line ending issues on Windows
* Derive fork count from CPU details in org.openhab.core tests for more stable tests on machines with fewer cores
* Adjust SafeCallerImplTest timings
* Increase ExecUtilTest timeout
* Increase SchedulerImplTest timeouts
* Increase AudioConsoleTest serveStream timeout
* Increase AudioServletTest serveStream timeout
* Increase SchedulerImplTest test timeouts
* Increase ExpireManagerTest timeout used for checking published events
* Increase PeriodicSchedulerImplTest max allowed delta
* Increase SchedulerImplTest timeouts
* Fix BundleInfoReader file stream not closed causing temp dir deletion issues on Windows
* Fix GenerateDefaultTranslationsMojoTest Windows line endings issues
* Fix GenerateDefaultTranslationsMojoTest Windows temp dir deletion problem
* Fix GenericItemProviderTest tearDown sometimes fails because of queued events
* Fix ChannelLinkNotifierOSGiTest wait for channel link events
* Fix ChannelCommandDescriptionProviderOSGiTest fails if provider not immediately registered
* Fix ChannelStateDescriptionProviderOSGiTest fails if provider not immediately registered
* Fix GenericItemChannelLinkProviderTest not waiting for async updated state to become true
* Fix GenericThingProviderTest failing due to events of previous test
* Fix InboxOSGiTest sometimes fails because of queued events
* Fix ScriptEngineOSGiTest failing because items are not yet added to registry
* Fix ThingManagerOSGiTest failing due to async handleRemoval call

Signed-off-by: Wouter Born <github@maindrain.net>
2022-04-14 23:00:33 +02:00
Wouter BornandGitHub a4353ee5ca Fix UnitUtils.getDimensionName returns Angle instead of Dimensionless (#2895)
An Angle is also Dimensionless and because it is the first compatible unit it is always returned instead of any other Dimensionless unit.
With these changes `getDimensionName` will prefer the dimension of equal units over those of compatible units.

Fixes #2880

Signed-off-by: Wouter Born <github@maindrain.net>
2022-04-14 22:57:18 +02:00
Wouter BornandGitHub 5df95cd8be Upgrade nrjavaserial to fix file descriptor leak (#2899)
Uses an openHAB 5.2.1.OH1 build based on the latest changes in the nrjavaserial master branch (https://github.com/NeuronRobotics/nrjavaserial/tree/7aa21d1dc8cecdc8daad3ebc40273cfb8179e9d2).
When there is an official release containing those changes we can upgrade to that.

Most importantly this fixes a file descriptor leak when checking lock dir permissions.
It also adds FreeBSD aarch64 (ARM64) support.

Fixes #1842

Signed-off-by: Wouter Born <github@maindrain.net>
2022-04-08 07:42:45 +02:00
Wouter BornandGitHub b5de891ebd Update semantic metadata of group members when groups are added/removed (#2884)
* Update semantic metadata of group members when groups are added/removed

This fixes the issue that the semantic metadata is incorrect when defining items in files and groups in the UI.

Fixes #2117
2022-04-03 11:55:19 +02:00
Wouter BornandGitHub f0b53cea34 Fix i18n-maven-plugin project name (#2879)
This makes it follow the naming scheme as used with the other projects.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-29 17:05:58 +02:00
Wouter BornandGitHub f20799b69b Improve HostFragmentSupportTest (#2859)
* Remove duplications
* Better null handling
* Use constants
* Use default waitForAssert timeout (10s)

This may help to get the test more stable (#1089).

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-27 10:46:36 +02:00
Wouter BornandGitHub b5e0ccfa6a Add missing default translations for add-ons/marketplace configuration options (#2868)
This makes it possible to use Crowdin for translating the new configuration options introduced in #2811.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-23 17:45:23 +01:00
Wouter BornandGitHub 7fbd9768a7 Cleanup BundleVersion (#2861)
Fixes a few SAT findings in the BundleVersion class.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-21 08:19:27 +01:00
Wouter BornandGitHub a0cc58c807 Upgrade Eclipse OSGi system bundle to 3.17.200 in runtime BOM (#2849)
This prevents deprecation warnings when running the itests with Java 17:

WARNING: A terminally deprecated method in java.lang.System has been called
WARNING: System::setSecurityManager has been called by org.eclipse.osgi.internal.framework.SystemBundleActivator (file:org.openhab.core.tests/target/test/tmp/testing/itest/cnf/cache/6.2.0/org.openhab.core.bom.runtime-index/org.eclipse.osgi-3.16.300.v20210525-1715.jar)
WARNING: Please consider reporting this to the maintainers of org.eclipse.osgi.internal.framework.SystemBundleActivator
WARNING: System::setSecurityManager will be removed in a future release

See: https://bugs.eclipse.org/bugs/show_bug.cgi?id=574729

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-18 07:44:47 +01:00
Wouter BornandGitHub 9e33db6702 Remove MQTT system broker leftovers (#2842)
The MqttService was used to keep track of the system MQTT brokers.
Since there are none it can be removed as well as the observer, tests, configuration and translations.

Fixes #2841

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-17 19:35:35 +01:00
Wouter BornandGitHub 7ae37f810b Fix typo in ScriptImpl exception message (#2847)
Fixes #2846

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-17 11:50:20 +01:00
Wouter BornandGitHub b62b2e1c90 Update bnd.bnd for CertificateGenerator package change (#2840)
There is also a bnd.bnd file referencing the CertificateGenerator so it also needs to be updated for the change in #2838

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-13 16:44:44 +01:00
Wouter BornandGitHub ba4e73ccf4 Run org.openhab.core tests in forks to reduce build time (#2837)
This saves about 1 minute when building this bundle.
Most bundles depend on org.openhab.core so cores would stay idle until this bundle is build in a parallel builds.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-13 12:11:11 +01:00
Wouter BornandGitHub 9eef6a3b6d Fix CertificateGenerator package (#2838)
The class is in a package that does not match the bundle name.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-13 10:42:06 +01:00
Wouter BornandGitHub 92a6c1c283 Fix trigger channels not found (#2833)
Trigger channel types failed to load because the item type became required with the changes in #2775.
Also adds a unit test for the ThingDescriptionReader to prevent future regressions.

Fixes #2831

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-12 21:49:25 +01:00
Wouter BornandGitHub e6ddeccd78 Add more null annotations to XML processing classes (#2775)
This adds null annotations to many XML processing classes and a few others.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-10 19:57:31 +01:00
Wouter BornandGitHub 7422a13e22 Remove temporary OSGi framework inclusion (#2820)
The itests are run using an R7 framework so the inclusion no longer seems required.
This also allows for easily customizing Import-Package headers in itest bundles.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-09 21:49:58 +01:00
Wouter BornandGitHub f664d756c7 Correct GHA build step condition (#2818)
Fixes that the wrong build step was made conditional in #2817.
It should conditionally add annotations.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-06 09:19:26 +01:00
Wouter BornandGitHub a54ef35adc Add Java 17 to GHA CI build matrix (#2817)
This adds Java 17 to the GitHub Actions CI build matrix so we can make sure the build keeps working with both Java 11 and Java 17.
It also updates the required Java version range used by the enforcer plugin so it is also possible to build with the supported Java versions.
Furthermore it prevents duplicate error annotations being added by only adding these in the Java 11 matrix build.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-05 17:24:10 +01:00
Wouter BornandGitHub 44f9baff18 Upgrade Xtext/Xtend to 2.26.0, LSP4J to 0.12.0 (#2786)
For release notes, see:

https://www.eclipse.org/Xtext/releasenotes.html#/releasenotes/2022/02/28/version-2-26-0

This release adds initial support for Java 17.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-03-05 11:28:56 +01:00
Wouter BornandGitHub 738149d44b Remove unused local variable (#2807)
Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-27 11:10:41 +01:00
Wouter BornandGitHub 9ff7ad43b9 Add more null annotations to automation bundles (#2763)
* Add more null annotations to automation bundles. This adds null annotations to many classes in the automation bundles and a few dimension classes.
* Further cleanup AutomationCommandExport
* Remove null from RuleStatusInfo JavaDocs. This should be clear from how the class is now annotated.
* Validate deserialized RuleStatusInfo
* Allow TriggerHandlerCallback to be triggered without providing a context

Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-25 16:40:02 +01:00
Wouter BornandGitHub 2e0b242099 Fix rules stay uninitialized when using Java 17 (#2787)
On Java 17 there is no Nashorn scripting engine so it takes a bit longer before ScriptEngines are available.
Rules would stay uninitialized forever because the ScriptModuleTypeProvider did not notify its listeners whenever script.ScriptAction, script.ScriptCondition became available.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-20 20:42:32 +01:00
Wouter BornandGitHub 5e33cfc26a Fix test failures when building with Java 17 (#2788)
* Adds some --add-opens to maven-surefire-plugin for:
  * modbus transport tests (java.net)
  * tests using Gson/XStream (java.util)
* Only run ScriptScopeOSGiTest when Nashorn is available as it has been removed since JDK 15

Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-20 20:40:10 +01:00
Wouter BornandGitHub c300410fd9 Support multi bundle bindings in i18n-maven-plugin (#2748)
* Support multi bundle bindings in i18n-maven-plugin

The plugin did not generate translations for bundles of bindings that do not have a binding.xml file.
With this change it should also be possible to generate the default translations of the modbus and mqtt bindings.

Related to openhab/openhab-addons#12220

Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-20 11:57:18 +01:00
Wouter BornandGitHub f411561b70 Flush old JsonStorage to file before recreating a new one (#2778)
Fixes #2774

Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-17 21:41:41 +01:00
Wouter BornandGitHub 92917946d4 Add even more null annotations (#2752)
This PR adds even more missing null annotations which did not fit in #2742 as it grew too big.

Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-17 21:30:51 +01:00