v4.1.8 pre-release #176
Replies: 11 comments 45 replies
-
Sounds like a great release already, nothing to disruptive to have to cater for ;-) |
Beta Was this translation helpful? Give feedback.
-
Being "feature complete" is a bold statement to make, so I am not going to make that statement. However this release will carry some hefty feature-completing stuff. I can't wait. Final testing is happening. There's quite a few things that have been improved. Automated forecast updates All users of this integration will have Home Assistant automation(s) set up to fetch forecast updates at desirable times of day. And that's great for the power users, who want an update just after midnight, then another strategic update pre-dawn, and then spread other updates up to API limit throughout the day (or not...). The reason that all users have to do an automation now is because our forebears removed automatic updating when Solcast dropped their API limit maximum for hobbyist users to just ten per day. It got too hard I guess. It is not too hard. And it is done. If you don't need to do anything special, then head into the integration config options and turn on 'Auto-update'. Disable or delete your automation. You can specify whether you want automation over twenty-four hours, or from sunrise to sunset. Too easy. "But hang on! I want an automation to get one update just after midnight for PredBat, then I wouldn't mind taking advantage of this new auto-update thing. Can I?" Absolutely. Supposing you have two sites, and an API limit of 10, then set the limit in the integration config options to 8, turn on auto-update, then have your post-midnight automation do its thing (with a twist). The twist is that there is now a new service call that must be used instead. This is Full spread of attributes breakdown by site Absolutely all sensor attributes may now be broken down by site, including the detailed half-hourly and hourly forecasts. For why? I dunno. They're there for the taking, and for you to decide what you want to do with the data. How about build an Apex chart representation of each site forecast? Or build an automated per-site dampening automation? Your install, your things. (And tell us if you can't do what you want because the data is missing. We may have missed exposing something.) All attributes sent to Home Assistant may be configured in config options. You choose the clutter. Turn them on or off. The big attributes, like per-site detailed forecasts are not sent to recorder, so your Home Assistant database size will not suffer even with everything turned on. Per-site dampening Do you need to dampen just one site output in the forecast calculation? You can now. Check out the extended service call for It is now possible to add an optional Hard limit Most of you don't know what this is. But it has been a thing, only configurable by service call. It is now in the config options dialogue. Don't know what it does? Ask the readme. You probably don't need it, but for those that do they will appreciate this. Suppression of integration re-load on options change Previously, should any config option be changed then the integration would simply re-load, because whatever. It does not now. It is judicious. It's a small thing, but I like it. Basically, if the integration does not need to, then it will not re-load. Are selected sensor attributes changed? Fine. Just update the sensors and move on. Has dampening been adjusted? Fine, re-calculate forecast, splines, and then update the sensors. Change to auto-update forecasts? Re-load. Legacy improvements (Nerd alert 🚨) Some Home Assistant timers seemed to not be culled at times on re-load. This was usually an annoyance and waste of system resources. However, with auto-update of forecasts now implemented this has become super-important to avoid. So it is avoided. All coroutines that may be pending/running at shutdown are now gracefully cancelled. In-code documentation (Final nerd alert 🚨) If you want to contribute to this brilliant integration, then you will be thankful for the extensive in-code documentation that has been added, describing functions, their input and return values, as well as the exceptions that they may raise. VSCode shows this stuff brilliantly, and I love it. (Your taste may vary, but please, bend to our taste.) Any PRs in future will be expected to adhere to essential coding standards, along with a clean pylint bill of health and use of accepted Python coding standards, naming conventions and internal documentation. Community code shoud not just be about it "working", it must be about it being working and maintainable into the future, beyond any one individual's needs. Set up the Pylint, Error Lens and Pylance extensions in VSCode for a substantial win. |
Beta Was this translation helpful? Give feedback.
-
As has become tradition, notifying the usual early-adopting-and-reporting folk. @dtswk, @EddieSpaghettie, @ffm777, @gcoan, @hwb45, @iainfogg, @isorin, @jeffb1974, @ladaan, @Markyt77, @Nilogax, @Noodleyman, @ProphetOfDoom, @rholligan, @sh00t2kill, @Unlik and @wimdebruyn. |
Beta Was this translation helpful? Give feedback.
-
All looking good to me! |
Beta Was this translation helpful? Give feedback.
-
I disabled my scheduled agent and enabled the update in the config and like magic it updated. :) |
Beta Was this translation helpful? Give feedback.
-
Anyone else seeing things like this? Or am I just special? |
Beta Was this translation helpful? Give feedback.
-
I believe I have a concrete-ish retort for a lack of consistency of My latest research indicates that if a sensor does not feaure a state class, i.e. |
Beta Was this translation helpful? Give feedback.
-
Feedback on 4.1.8 beta: A day after the announcement HACS advised me of the beta version being available, no action required on my part to toggle the beta switch on or off [prior releases I think I had to manually force an update, this time all OK] Installed fine, rebooted and the system log shows a clean run, upgrading to configuration options 10, 11 and then 12. Sensors as far as I can see are all working OK. Looking at the new configuration options I can see that several have had the text expanded to make them clearer what they are and do (e.g. preferred forecast). All looks good. My existing config options have all transferred over OK and at the moment I don't see any particular need to change them (sorry Steve, all that new configurability and I'm not using it 😞) Some questions/comments/observations: Automatic updates over 24 hours I understand the principle, it's an auto update every 24//. What time is the first auto-update, is that midnight or just completely random (or horrors, potential enhancement for user configurable start time)? Automatic updates over sunrise-sunset needs more explanation I suggest. And yes, I did read the readme. Again, how is this spread out and when does it start? Enable site breakdown, my understanding is it creates site breakdown of hourly and/or half hourly detail depending upon what the prior configuration options are set. So if I have half hourly on but not hourly and I turn site breakdown on, I'll get only the half hourly site breakdown. Likewise if I don't turn on either of the detail toggles then turning the site breakdown on will do nothing. Possible extra logic checking in the configure dialogue to enforce what the rules are. Further enhancement idea, enable configurability as to which site breakdowns are produced. Because of the way my sites and arrays are split I am only really interested in the detail for one of my sites/arrays which has the potential to clip. The other, not so interested in. I see mention in the dialogue that site breakdowns for half-hourly/hourly detail is explicitly not saved to LTS statistics. And this brings me to a further request, I think I'd like more control over what attributes are saved to the state_attributes table. TBH I am not interested in storing the (non site specific) state attributes for the half/hourly forecast. The total daily forecast is useful and interesting (and maybe the peak time) but the site specific breakdown, nah, that was an estimate and it was the past, so not interested. A great new release, thanks guys |
Beta Was this translation helpful? Give feedback.
-
Glad you're not using them. We have a full spread of attributes now, and hardly anyone should be using all of them. But everyone should be able to choose what they need.
The first poll of the day for 24-hour is 00:00. The first poll for sunrise->sunset is sunrise. Yes, 00:00 and on-the-hour subsequently has stuff-up written all over it, but I am tipping that the 24-hour option will be unpopular because so many retries encountered. Could I have randomised it a bit? Yep. Did I? Nope. I considered it, but we have randomised back-off retries to cope. I will re-visit this if there is a need to. For all auto-updates, time intervals are rounded down. i.e. If sunrise is 8am, sunset 6pm then there will be a call at 8am, but no call at 6pm. If you turn on DEBUG level logging then the scheduled calls are laid out at midnight for you in detail. Maybe these should be logged at INFO level, which is not a bad thought.
Correct. It would be foolhardy to expect a breakdown of something that one had not asked for in the first place, but I get the point. I had considered this but Home Assistant options flow is not smart enough to restrict a tick box if another tick box is not ticked, so I moved on.
This is possible, as is everything, but umm. That's a 'no' from me. Union rules. One out, all out. One in, all in. I am not entering my site IDs as a comma separated list anywhere, and the storage use is inconsequential because recorder suppression or tiny. And I am not translating that into Urdu. 😂
LTS actually does store the attribute values, unless they are specifically excluded. I specifically exclude them. Recall your PredBat warning messages about recorder being overloaded with big fat stuff? Attributes be the answer there.
I did not consider it because short-term, and pretty small in the scheme of things. |
Beta Was this translation helpful? Give feedback.
-
72 downloads so far. No bug reports. That's a good sign, @autoSteve. |
Beta Was this translation helpful? Give feedback.
-
v4.1.9 is set free. Closing. |
Beta Was this translation helpful? Give feedback.
-
@autoSteve has done his magic so this is no longer a placeholder. Amazing work on this massive release.
This has been released as a pre-release (beta) for early adopters to test first.
Details: #176 (comment)
Beta Was this translation helpful? Give feedback.
All reactions