What specific variables are you watching ? There are several in GCal3 that get overwritten each time the plugin checks the calendar - although I'd think most of these would not have even been in the old GCal1 (but clearly some were). In general - I did not deliberately attempt to only update on changes, since this would require quite a bit of code. From memory, the old GCal did not do that either, although it may have worked out that way.
Give me some specifics and I'll see what can be done.
Oops, good point, I didn't mention that. In general the only variable I actually watch is "urn:micasaverde-com:serviceId:SecuritySensor1", "Tripped".
I looked at the code, there are only 4 times that "urn:micasaverde-com:serviceId:SecuritySensor1", "Tripped" gets changed or rewritten (to the same value as before):
1) During a reload - rewrite
2) In response to a new event starting - change
3) In response to an event ending - change
4) when there is calendar check - rewrite
# 4 and some other variables are re-written at each calendar check and is some really old code when I though you could manually change a variable in the advanced tab and mios would just update it.
My experience since then is that mios always reloads when you change a variable so there is no point in that old code ..... although I have to check / validate this with UI7 as well ........ I'll do some tests to see if it's redundant .....
But - unless the variable_watch is reporting a change in response to #4 (even though the variable would not normally change) - I'm not sure what situation would cause the issue you are seeing.
If you can describe a reproducible scenario and include a log file covering the period when it happens, (pls set gc_debug to 3 before creating the log file) - then we should be able to narrow down and hopefully fix