63 Commits

Author SHA1 Message Date
Jenkins nymea
ae92eb562b Merge PR #437: Add thingClassId to thingDescriptors json 2021-07-06 17:18:31 +02:00
Jenkins nymea
cdedaca2b7 Merge PR #436: Add some convenience methods to access states/stateTypes by name 2021-07-06 17:18:30 +02:00
Michael Zanetti
7f2261d769 Add thingClassId to thingDescriptors json 2021-06-27 00:40:33 +02:00
Michael Zanetti
3774a4adc9 Add some convenience methods to access states/stateTypes ba name 2021-06-25 13:48:44 +02:00
Michael Zanetti
d1e4aaaaa2 Allow [u]ints to be used with analog IO connections 2021-06-16 00:54:45 +02:00
Michael Zanetti
c74ca7cbe6 Also disable it for plugins 2021-05-11 16:13:43 +02:00
Jenkins nymea
c9af1280aa Merge PR #410: Add support for storing application data on the core 2021-04-19 11:38:30 +02:00
Jenkins nymea
6f6bce5dae Merge PR #407: Rename forgotten deviceParams in ThingDescriptor 2021-04-19 11:38:28 +02:00
Jenkins nymea
c5864b8428 Merge PR #405: Add support CONFIG+=asan for building with address sanitizer 2021-04-19 11:38:26 +02:00
Jenkins nymea
84fe40b3e3 Merge PR #401: Add support for the plugin and api key storage to python plugins 2021-04-19 11:38:21 +02:00
Michael Zanetti
60de0a3eed Add support for storing application data on the core 2021-04-07 00:23:19 +02:00
Michael Zanetti
394e3cc615 Rename forgotten deviceParams in ThingDescriptor 2021-03-17 23:26:23 +01:00
Michael Zanetti
b92897600c Add support CONFIG+=asan for building with address sanitizer 2021-03-14 21:48:36 +01:00
Michael Zanetti
9d30be2568 Add support for the plugin storage to python plugins 2021-03-08 00:47:12 +01:00
Michael Zanetti
1b33015354 Also include big jumps in the calculation for the standard deviation 2021-03-05 22:22:18 +01:00
Jenkins nymea
5cf6267c4b Merge PR #388: Plugininfocompiler: Add debug output for unknown units 2021-02-25 11:27:09 +01:00
Michael Zanetti
29f88d744d Fix suggestLogging property for plugin devs 2021-02-24 13:41:41 +01:00
Michael Zanetti
5bcda4c25b Add missing license headers 2021-02-03 00:42:32 +01:00
Boernsman
f4b4e72e3a added debug output for unknown units 2021-02-02 14:11:12 +01:00
Michael Zanetti
3fb74cc9e4 Add API to configure logging/filtering by the client 2021-01-04 16:43:28 +01:00
Michael Zanetti
32eb6d6dd7 tune filter 2021-01-03 21:58:10 +01:00
Michael Zanetti
eeb1feade0 Add a jitter filtering mechanism 2021-01-02 14:33:15 +01:00
Michael Zanetti
ae38e185b6 more work... not really working yet 2021-01-02 14:33:15 +01:00
Michael Zanetti
56448543df An attempt to make it configurable 2021-01-02 14:33:15 +01:00
Michael Zanetti
5f1855ff44 Don't log all states by default any more 2021-01-02 14:33:15 +01:00
Jenkins nymea
9b076a9873 Merge PR #370: Prevent multiple finish calls on API objects 2020-12-21 18:00:59 +01:00
Jenkins nymea
c9dd8551b2 Merge PR #361: Add a rudimentary mechanism for plugins to provide service data 2020-12-21 18:00:55 +01:00
Jenkins nymea
58ba2c9733 Merge PR #360: Allow building the plugininfocompiler standalone 2020-12-21 18:00:54 +01:00
Jenkins nymea
e5e670753e Merge PR #357: Fix state change signal 2020-12-21 18:00:51 +01:00
Michael Zanetti
f1fa59c535 Fix initialisation of the global logging category variable
Just accessing the raw variable doesn't guarantee the order
of construction and may lead to crashes in certain constellations.
2020-12-14 23:38:17 +01:00
Michael Zanetti
a11a219bbf Prevent multiple finish calls on API objects
Bad plugin implementations might call finish() more than once
which is not expected by receivers of the finished() signal and
may cause weird side effects.
2020-12-14 23:38:17 +01:00
Michael Zanetti
c31b99b04e Add a rudimentary mechanism for plugins to provide service data 2020-12-14 23:37:59 +01:00
Michael Zanetti
d999d1c715 Allow building the plugininfocompiler standalone
This is required to be able to build a "native" version of the pic
without having to build all the dependencies pulled in by the
HardwareManager.
2020-12-14 23:37:43 +01:00
Michael Zanetti
12eef39013 Fix potential wrong state signal
Make sure to emit the very same value we store
2020-12-06 23:33:23 +01:00
Michael Zanetti
b1ede004b3 Improve parameter validation for interface actions and events 2020-11-28 14:51:28 +01:00
Jenkins nymea
1f652ed78c Merge PR #342: Force full linking of plugins at build time 2020-10-28 19:07:40 +01:00
Jenkins nymea
c956988f32 Merge PR #341: Add an API keys provider plugin mechanism 2020-10-28 19:07:39 +01:00
Jenkins nymea
618d1589f8 Merge PR #333: Allow states, events and actions in interfaces to be optional 2020-10-28 19:07:32 +01:00
Michael Zanetti
dcae305625 Add an API keys provider plugin mechanism 2020-10-20 19:44:47 +02:00
Michael Zanetti
07b8515870 Force full linking of plugins at build time 2020-10-19 13:07:19 +02:00
Michael Zanetti
e50eece45c Fix metatype registering for old Qt versions 2020-10-15 22:34:06 +02:00
Michael Zanetti
a90841401c more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
c7f957f201 some more python plugin work 2020-10-15 22:34:06 +02:00
Michael Zanetti
5d0751ae27 fix thread syncronisation 2020-10-15 22:34:06 +02:00
Michael Zanetti
3c47e59811 some more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
125aee7153 Some more python plugin stuff 2020-10-15 22:34:06 +02:00
Michael Zanetti
49bbd64434 Allow states, events and actions in interfaces to be optional 2020-09-20 23:32:15 +02:00
Jenkins nymea
768b6a877e Merge PR #314: Fix conversion of values 2020-08-14 13:09:34 +02:00
Michael Zanetti
5002fad6d9 fix tests 2020-07-26 01:00:29 +02:00
Michael Zanetti
85146abca5 Fix type conversions of values
This fixes 5 issues in regard to types of values:

1) Default values for params in the metadata were not converted properly,
most visibly on integer values being loaded as double values.

2) Param values coming in from jsonrpc were not converted properly.

3) The plugin might set state values with invalid types or being out of range.

4) If, for some reason (e.g. earlier versions of nymea, or a plugin setting
its own params in code with a wrong type), there was a param value with a
wrong type in the system, we stored that wrong type and restored it on loading
of plugin params while instead it really should be converted to the specified
type in the ParamType.

5) If a plugin is not loaded for a configured thing, the old code would
not initialize the states properly but upon shutdown save those invalid
values to the cache.
2020-07-15 00:22:43 +02:00