Commit Graph

71 Commits

Author SHA1 Message Date
Wouter Born
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
J-N-K
df978f434a
Fix memory leak in ScriptedRuleProvider (#2897)
* Fix memory leak in ScriptedRuleProvider

The Rule was never removed from the internal tracking map and therefore allocated resources were never freed.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2022-04-07 08:19:05 +02:00
J-N-K
79e070c7ac
Improve ScriptFileWatcherTest (#2857)
Most of the tests add a timeout of 1s to account for small delays in async processing in the AbstractWatchService. This adds some more timeouts for tests which were missing those.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2022-03-19 21:08:00 +01:00
Wouter Born
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 Born
ad936cd83f
Add more null annotations (#2742)
* Add more null annotations
* Fix mock name

Adds null annotations to most of the tests as well as a few other classes.
Also fixes a few other SAT findings.
Fixes ~300 SAT findings in total.


Signed-off-by: Wouter Born <github@maindrain.net>
2022-02-14 11:33:50 +01:00
J-N-K
ea6f21f74d
allow multiple listeners for same directory in WatchService (#2724)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2022-02-07 10:14:41 +01:00
Jonathan Gilbert
290ad08107
[automation] ScriptFileWatcher Initial import now only processes dir (#2708)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2022-01-29 23:53:56 +01:00
Jonathan Gilbert
89aae83b64
[automation] ScriptFileWatcher subdirectory loading upon startup no longer hardcoded to true (#2664)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2022-01-08 10:19:38 +01:00
Christoph Weitkamp
cabb3f7315
Update license headers to 2022 (#2671)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2022-01-07 13:16:42 +01:00
Kai Kreuzer
e3b07782b4
pom reference update from http to https (#2644)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2021-12-23 22:55:20 +01:00
Kai Kreuzer
1ebf7395d9 Apply spotless
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2021-12-20 06:59:22 +01:00
openhab-bot
5ac05c4968 [unleash-maven-plugin] Preparation for next development cycle. 2021-12-19 21:49:34 +00:00
Jonathan Gilbert
2883dfbc3e
Made script file watchers reusable in preparation for language-specific versions (#2593)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-12-12 13:48:38 +01:00
J-N-K
b02dfdc067
[automation] implement a listener for ScriptEngineFactory changes (#2459)
* implement a listener for ScriptEngineFactory changes

Signed-off-by: Jan N. Klug <jan.n.klug@rub.de>
2021-08-22 12:15:23 +02:00
J-N-K
d11a72272e
make ScriptLibraryWatcher accessible for other languages (#2456)
Signed-off-by: Jan N. Klug <jan.n.klug@rub.de>
2021-08-19 14:00:40 +02:00
J-N-K
638356c943
fix missing configuration in Rules (#2448)
Signed-off-by: Jan N. Klug <jan.n.klug@rub.de>
2021-08-08 15:13:30 +02:00
Kai Kreuzer
5a667cc868 applied spotless
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2021-06-27 23:22:02 +02:00
jenkins
b8d2077805 [unleash-maven-plugin] Preparation for next development cycle. 2021-06-27 15:50:02 +00:00
Kai Kreuzer
6a6e201ac7
Revert "Ignore relative library directories for scripts (#2408)" (#2414)
This reverts commit 241a4f6ebf.
2021-06-25 11:11:18 +02:00
Jonathan Gilbert
241a4f6ebf
Ignore relative library directories for scripts (#2408)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-06-25 09:45:18 +02:00
Fabian Wolter
e007307796
[automation] Expose TriggerHandlerCallback scheduler (#2388)
* [automation] Expose TriggerHandlerCallback scheduler

Signed-off-by: Fabian Wolter <github@fabian-wolter.de>
2021-05-31 10:04:21 +02:00
Wouter Born
7579aa4d31
Fix more SAT findings and add a few suppressions (#2335)
* Fix more SAT findings and add a few suppressions

Signed-off-by: Wouter Born <github@maindrain.net>
2021-05-05 20:59:59 +02:00
Wouter Born
05b7ec86f1
Fix new SAT findings (#2291)
Signed-off-by: Wouter Born <github@maindrain.net>
2021-04-14 18:41:07 +02:00
Jonathan Gilbert
6961db74d0
[automation] Correctly unload script before reload. (#2254)
- Correctly unload script before reload.

Fixes #2246

Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-03-26 09:48:55 +01:00
Wouter Born
07b95ca668
Fix SAT findings (#2256)
Fixes 65 SAT findings.

Signed-off-by: Wouter Born <github@maindrain.net>
2021-03-25 20:18:08 +01:00
Jonathan Gilbert
115d39ff35
Removed Jetbrains @NonNull annotations (#2241)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-03-15 00:15:21 +01:00
Jonathan Gilbert
635b700c72
[automation] Added optional per-script StartLevels (#2222)
Allows scripts to specify per-script start levels which differ from the start level for the ScriptFileWatcher itself. Also extracted some functionality from ScriptFileWatcher into distinct components & added unit tests to cover all script loading functionality.

Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-03-14 22:30:12 +01:00
Kai Kreuzer
62c74da0c0 Applied spotless fix
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2021-03-02 21:38:34 +01:00
boc-tothefuture
89796e79c0
Provide Script Names to Script Engines (#1885)
Signed-off-by: Brian O'Connell <broconne@gmail.com>
2021-03-02 21:36:07 +01:00
Wouter Born
49e148ad7d
Fix headers (#2161)
Signed-off-by: Wouter Born <github@maindrain.net>
2021-01-27 23:43:44 +01:00
Jonathan Gilbert
f1a3d824ac
Add ability for scripts to create unmanaged rules (#1897)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-01-26 22:25:09 +01:00
Jonathan Gilbert
f0c9a8434d
Added ability for ScriptEngines to allow script dependencies to be tracked and changes to trigger script reloading (#1884)
Signed-off-by: Jonathan Gilbert <jpg@trillica.com>
2021-01-26 22:23:31 +01:00
Wouter Born
774b9d607b
Update license headers to 2021 (#2041)
Signed-off-by: Wouter Born <github@maindrain.net>
2021-01-01 16:43:46 +01:00
Wouter Born
bf14e1077f
Apply Spotless, resolve itest runbundles for 3.1.0 (#1982)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-12-22 10:01:42 +01:00
jenkins
965531696b [unleash-maven-plugin] Preparation for next development cycle. 2020-12-20 22:24:39 +00:00
Kai Kreuzer
1a2c81d9e2
Improved startup logging and avoid scripts being loaded in start level service thread (#1919)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2020-12-13 09:31:09 +01:00
Kai Kreuzer
076ac3fe15
Implemented start level service (#1914)
Fixes #1637
Fixes #1777
Fixes #1734
Fixes #1823
Fixes #1808

Signed-off-by: Kai Kreuzer <kai@openhab.org>
2020-12-12 14:34:37 +01:00
Wouter Born
d5e7fe3ab3
Update LastNPE EEAs to 2.2.1 (#1821)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-11-17 16:29:09 +01:00
Wouter Born
0281c10036
[infrastructure] add external null-annotations (#1775)
Add EEAs and fix null analysis errors.

Related to:

* #888
* openhab/openhab-addons#8848

Signed-off-by: Wouter Born <github@maindrain.net>
2020-11-03 21:33:48 +01:00
Kai Kreuzer
0f134996f2
removed boot bundle (#1559)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2020-07-24 13:11:56 +02:00
Kai Kreuzer
8218f44667
[cleanup] refactored Extension to Addon (#1560)
* refactored Extension to Addon

Signed-off-by: Kai Kreuzer <kai@openhab.org>
2020-07-22 21:08:10 +02:00
Christoph Weitkamp
53a749f869
Use UTF-8 to read files (#1484)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2020-05-20 22:35:52 +02:00
Christoph Weitkamp
6e407d01e6
Removed INFO logging from ScriptedAutomationManager#removeAll() method (#1478)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2020-05-17 19:38:25 +02:00
Wouter Born
61e17ce39e
Upgrade SAT and Spotless, apply Spotless and enable check (#1446)
* Update SAT and Spotless dependencies
* Apply Spotless and enable check

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-26 11:15:24 +02:00
Wouter Born
92027ca922
Use .equals() on constants and literals to prevent NPEs (#1420)
* Use .equals() on constants and literals to prevent NPEs

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-16 07:40:49 +02:00
Wouter Born
fb7a7ac421
Add null annotations to providers and ThingManager (#1412)
* Add null annotations to providers and ThingManager

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-11 08:29:12 +02:00
Christoph Weitkamp
8955ef9a16
Added nullness annotations to 'ScriptExtensionProvider' (#1411)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2020-04-07 08:35:18 +02:00
Scott Rushworth
5710532b05
[automation] Improve file extension exclusion (#1370)
This change improves the way file extensions are excluded from ScriptFileWatcher. Discussed [here](https://github.com/openhab/openhab-core/pull/1367#discussion_r379914147).

Signed-off-by: Scott Rushworth <openhab@5iver.com>
2020-02-27 12:50:50 +01:00
Scott Rushworth
1cb17e1a7d
[automation] Corrected issue where scripts were not starting when OH restarted (#1367)
* Corrected issue where scripts were not starting when OH restarted

Fixes #841

Signed-off-by: Scott Rushworth <openhab@5iver.com>
2020-02-17 13:43:27 +01:00
Christoph Weitkamp
08da8de5cf Moved "ESH-INF/" folders to "OH-INF/" folders (#1328)
* Moved ESH-INF folders to OH-INF folders

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2020-01-17 15:29:18 +01:00