GNOME Bugzilla – Bug 586167
weather in clock is NEVER update after loss of connectivity
Last modified: 2020-11-06 20:21:44 UTC
Sunday I have had a long internet outtage (dead ADSL modem). This has caused the weather in the clock to not update since. (we are Wednesday)
Confirming, this happens to me from time to time after my laptop is used offline
Clock applet bugs are handled by the gnome-panel product, not the gnome-applets product. Not that there is any easy way to figure this out. In any event the bug has already been reported - complete with patch. *** This bug has been marked as a duplicate of 579092 ***
Comments in 579092 suggest this is not a duplicate of that bug. Reopening and assigning to the correct product.
*** Bug 614812 has been marked as a duplicate of this bug. ***
It should be easy to fix. Simply remember the time when the weather information was last downloaded, and do not display weather information if it is older than a few hours. There might be a problem if the system clock is changed by a large amount. This could cause the weather information to be removed prematurely if the clock is set forward, but this at least would not cause out-of-date weather information to be displayed. It could cause the weather information to be displayed for too long if the clock is set backward, although this problem could be minimized by always checking if the time of last weather download is past the current time, and setting it to the current time if it is. I'd like to try to fix this. What would I do to get and build the source on Fedora 13? I tried looking through the documentation at gnome.org, but it doesn't seem to mention how to get the source and write patches.
I was finally able to find the source code at http://git.gnome.org/browse/gnome-panel/ and http://git.gnome.org/browse/libgweather/ It seems that the problem is that libgweather effectively implements a cache of weather information, but does not have a policy for expiring out-of-date cache information (such as a DNS cache or browser cache). It maybe possible to implement the expiration policy I detail above by adding a field to store the time the weather information was retrieved to the _WeatherInfo struct, checking the time in the weather_info_is_valid method, and using that method instead of the valid field to check if the weather iformation is valid. This should fix the problem in all applications that use libgweather. Now to figure out how to build and run libgweather...
I think I fixed this. Some info about building this to test would be greatly appreciated!
bugzilla.gnome.org is being replaced by gitlab.gnome.org. We are closing all old bug reports in Bugzilla which have not seen updates for many years. If you can still reproduce this issue in a currently supported version of GNOME (currently that would be 3.38), then please feel free to report it at https://gitlab.gnome.org/GNOME/gnome-panel/-/issues/ Thank you for reporting this issue and we are sorry it could not be fixed.