Comments (6)
Thanks for reporting this! I'll look into the problem tonight.
It would be really helpful for debugging, if you could run kelvin again with the -debug
parameter. This should give me a little more context.
Apart from this I will give the mentioned linter a try. go vet
is already part of the deployment pipeline, runs with every build (see .travis.yml) and any detected correctness problem will result in a build breaker. The main purpose of golint
is to report styling errors and probably won't help here.
Unit tests are a tricky beast if you are dealing with an external, changing api the produces different results for different light bulbs based an individual, user configured schedules... Nevertheless you are right, they might by really helpful. :-)
from kelvin.
Thanks for taking a look. I'm out of the house for a while. Should be home again in a few days.
from kelvin.
Ok, I looked into the issue and am suspecting a (hopefully) rare timing issue. This has been fixed.
To be really sure this was your problem I would ask you to try kelvin again when you come home and attach the debug logs. Just to be sure. As soon as we can confirm the fix, I will push out a new release.
Thanks for your patience!
from kelvin.
I did a quick test again now with the -debug
flag. It no longer throws a panic, but it also never stops emitting any output. It looks like an infinite loop as the output keeps repeating the same type of output. I have a large sample of a log file, but not sure it makes sense to paste it in here. Instead I've shared the log file through dropbox https://www.dropbox.com/s/9acjgkkavx1is5z/kelvin.log?dl=0. I may delete the file in a week or so, so you may want to download it for your analysis ;-) Thanks for taking the time to look into this. I'll be happy to help with further debug efforts as my time permits. (I'll be away from my house for a year starting August 17, so I won't have access to my home's Hue lighting.)
from kelvin.
Wow, that's a massive log file! I saved a local copy so you can reclaim that precious dropbox space.
The excessive logging of ignored lights was another issue I fixed. I control all my lights with kelvin, so this one slipped through.
As mentioned before I released a new version (v1.0.3) containing these fixes. If you find the time before leaving for a year, give it a try! If not, see you in one year. You will find a vastly improved kelvin bot by then. ;-)
from kelvin.
Thanks for the fixes. I tried master branch just now, and no panics anymore. I didn't test the different features extensively except to see that it recognizes when I change the light using a switch. I won't have time to do more testing at this time, but it looks like the issue has been fixed and so feel free to close this one. See you next year ;-)
from kelvin.
Related Issues (20)
- After the Upgrade to v1.3.3, Kelvin No Longer Reacts to Lights Turning On HOT 4
- Push new releases to Docker Hub? HOT 1
- Possible to have defined time take precedence over sunset?
- Daylight Savings Adjustment
- Can't run on mac HOT 2
- How to make Kelvin play nicely with the "Wake up with light" automation? HOT 1
- How to stop Kelvin for disabling when physical lightswitch turned off and on? HOT 5
- How do I change the lights at exactly sunrise and sunset? HOT 1
- Kel
- Auto update to 1.3.5 failing on raspberry pi HOT 2
- Hue API v2 support
- Previous versions were deleted from Docker Hub HOT 1
- 1.3.5 unable to serve GUI HOT 2
- Disable automatic Updates HOT 1
- "enable kelvin" greyed out in dashboard
- Home Assistant OS Plugin HOT 1
- Does not work when bulp is disconected from the power grid
- Half of lights not adjusting when enableWhenLightsAppear = false
- Kelvin only applies defaultBrightness, defaultTemperature and schedules. Nothing else. HOT 3
- Auto update installed bad binary on Raspberry Pi HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kelvin.