784 Commits

Author SHA1 Message Date
Michael Zanetti
9f49187dc1 Fix tests and xenial build 2020-10-15 22:34:06 +02:00
Michael Zanetti
16c4fa3345 fix issues in teardown. 2020-10-15 22:34:06 +02:00
Michael Zanetti
d4889b5b78 Make it build with 0.23 2020-10-15 22:34:06 +02:00
Michael Zanetti
fdbdb02c16 Make it compatible with python 3.5 2020-10-15 22:34:06 +02:00
Michael Zanetti
be01d4c802 Restrict import paths to not use random python libs in the system 2020-10-15 22:34:06 +02:00
Michael Zanetti
75f4877f82 add settingChangedHandler, fix some issues, cleanup some warnings 2020-10-15 22:34:06 +02:00
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
Michael Zanetti
79dd00cb57 Add support for interface based script events and actions 2020-10-02 13:18:27 +02:00
Michael Zanetti
2f17a86506 Fix the webserver for serving static files 2020-09-23 00:49:37 +02:00
Michael Zanetti
f9cd2a99df Add caching information to client API
This allows JsonHandlers to set a hash for certain API calls.
Clients can use this information to load data for such a call
from a cache instead of calling the method over the network
just to get the same result as last time.
2020-09-15 13:53:19 +02:00
Michael Zanetti
4d480f7c3b Fix a potential crash in logging handlers 2020-09-09 19:19:42 +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
Michael Zanetti
d529a27df1 fix mocks to properly deal with the new way of reconfiguring 2020-09-01 13:45:14 +02:00
Michael Zanetti
573a2c061a Don't call thingRemoved() on the plugin in case of reconfiguring
Reasoning:

a) Currently, the API behaves inconsistently. While reconfiguring
a "justAdd" thing, it did call thingRemoved, however, reconfiguring a thing
that uses pairing did not.

b) The old implementation did not consider childs. Reconfiguring a
justAdd thing which has childs was calling thingRemoved on the parent only
but not its childs.

c) If we'd fix this by calling thingRemoved() for all flows and childs
we'd end up in hells kitchen as we can't know about the new state of childs
after the reconfiguration, so we can't just automatically add all the childs
back ourselves, the plugin needs to do that. This in turn would mean that
childs would get new ids which then breaks rules and stuff.

So the conclusion has been to just re-run the setup and the plugin implementation
is in charge for then checking the existing childs and calling autoThingDisappeared()
as needed.

WARNING: This also implies that we need to fix some plugins which currently rely
on thingRemoved to be called for reconfiguration and might create duplicate
connections or similar now.
2020-09-01 13:45:14 +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
c803a1e81b Merge PR #322: Fix update busy flag in GetUpdateStatus API call 2020-08-14 13:09:34 +02:00
Jenkins nymea
54d186b7f0 Merge PR #319: Fix missing name method override for json handlers 2020-08-14 13:09:34 +02:00
Jenkins nymea
dc536db74e Merge PR #315: Use bindValue for composing query strings for the log DB 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