65 Commits

Author SHA1 Message Date
Michael Zanetti
3436e9b998 drop usage of asyncio and run everything regularly threaded 2020-10-15 22:34:06 +02:00
Michael Zanetti
64e7d2784c checkpoint asyncio 2020-10-15 22:34:06 +02:00
Michael Zanetti
1018083052 add 2 missing data type conversions 2020-10-15 22:34:06 +02:00
Michael Zanetti
78e37f0d87 Fix shutdown 2020-10-15 22:34:06 +02:00
Michael Zanetti
b870140608 Add tests, fix shutdown 2020-10-15 22:34:06 +02:00
Michael Zanetti
746f3e4121 fix actions cleanup 2020-10-15 22:34:06 +02:00
Michael Zanetti
b0b480a539 drop some debugs 2020-10-15 22:34:06 +02:00
Michael Zanetti
dadffcb784 some fixes 2020-10-15 22:34:06 +02:00
Michael Zanetti
3296d4b417 more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
f132c6b006 some more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
0cbd1ff5ec Clenaup and polish types. 2020-10-15 22:34:06 +02:00
Michael Zanetti
a90841401c more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
1ce5d5980d some fixes 2020-10-15 22:34:06 +02:00
Michael Zanetti
8aa91292fe more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
85c9d93ccd Somoe type fixes 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
f97e5bf4d0 more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
59c1c8e9f2 some more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
68e9c82758 run a thread for each call 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
13d10b8aa0 some more python plugin work 2020-10-15 22:34:06 +02:00
Michael Zanetti
31cf425b79 intermediate 2020-10-15 22:34:06 +02:00
Michael Zanetti
a2e6d9e185 Add an event loop 2020-10-15 22:34:06 +02:00
Michael Zanetti
380e962bd1 some more work on python plugins 2020-10-15 22:34:06 +02:00
Michael Zanetti
a21315efc5 some more hacking 2020-10-15 22:34:06 +02:00
Michael Zanetti
d17b44c83d Initial attempt to support python plugins 2020-10-15 22:34:06 +02:00
Michael Zanetti
8fee1bb2e5 Fix duplicate connections on case of retrying 2020-10-15 22:33:36 +02:00
Michael Zanetti
6aaab68cdc Retry setup if it fails at startup (e.g. network isn't up yet or similar) 2020-10-15 22:33:36 +02:00
Jenkins nymea
eb291a47d5 Merge PR #334: Silence the warning about not being able to translate plugins 2020-09-08 13:53:52 +02:00
Jenkins nymea
65de093c4a Merge PR #321: Make it build with Qt 5.14 and -Wno-deprecated 2020-09-08 13:53:50 +02:00
Michael Zanetti
81ac85dd55 Silence the warning about not being able to translate plugins 2020-09-08 12:06:16 +02:00
Jenkins nymea
70c9c7f495 Merge PR #323: Fix cleanig up tags that are not needed any more 2020-08-14 13:09:34 +02:00
Jenkins nymea
768b6a877e Merge PR #314: Fix conversion of values 2020-08-14 13:09:34 +02:00
Michael Zanetti
1066e768c9 Fix cleaning up of tags that are not needed any more 2020-08-13 17:40:08 +02:00
Michael Zanetti
61871a729f Make it build with Qt 5.14 and -Wno-deprecated 2020-07-31 15:00:16 +02:00
Michael Zanetti
399f406d10 fixes 2020-07-27 19:38:21 +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
Jenkins nymea
c369bd15aa Merge PR #305: Allow emitting events from things directly 2020-07-14 11:26:14 +02:00
Jenkins nymea
7b60f05c64 Merge PR #299: Store state changes immediately when they change 2020-07-14 11:26:14 +02:00
Michael Zanetti
f029184651 Allow emitting events from things directly 2020-06-16 16:16:23 +02:00
Jenkins nymea
7337105073 Merge PR #291: Fix thing class translations 2020-06-07 19:16:23 +02:00
Jenkins nymea
3156264787 Merge PR #283: Reject duplicate ids in plugin json 2020-06-07 19:16:23 +02:00
Jenkins nymea
60eebfc289 Merge PR #282: Add support for generic IO connections 2020-06-07 19:16:23 +02:00
Michael Zanetti
82703de061 Fixes after testing/review 2020-06-07 19:15:39 +02:00
Michael Zanetti
cf2ce0ca27 Store state changes immediately when they change 2020-05-29 18:51:51 +02:00
Michael Zanetti
322bcf56a6 Add support for inverting the connections 2020-05-09 19:14:02 +02:00
Michael Zanetti
4e509d75f8 Add tests, some fixes/improvements 2020-05-05 21:04:07 +02:00