← Back to team overview

mythbuntu-bugs team mailing list archive

[Bug 574116] Re: Mythweather only updates once a day

 

I've worked out a fix.  There appears to be an issue with the perl date:manip package when parsing "today".  (I'm using date::manip version 6.05- the version included with Mythbuntu 10.04.  I haven't tried a newer version because I didn't wish to risk breaking something else).  The fix is to edit the envcan.pl script.  First add a new variable that stores today's date and time and put it in the correct format:
 
    my $date=localtime(time);
    $date=UnixDate($date, " %O \n");

(I put this near the top after the other variable definitions)

Then replace wherever it says "today" with the new variable $date.
 
There might be a better way, but this is the first time I've edited a perl script, and this appears to work.
 
Thanks

-- 
Mythweather only updates once a day
https://bugs.launchpad.net/bugs/574116
You received this bug notification because you are a member of Mythbuntu
Bug Team, which is subscribed to Mythbuntu.

Status in Mythbuntu, Ubuntu derivative focused upon MythTV: New

Bug description:
Hi,

I'm finding that mythweather only updates the first time I check it.  For subsequent checks on the same day, it only uses the cached value.   I've determined that the problem is that the envcan.pl script for Canada isn't calculating today's time properly, but I don't know perl, and I can't figure out how to fix it.

Further details:

The script command my frontend calls is:  

"nice /usr/share/mythtv/mythweather/scripts/ca_envcan/envcan.pl -u SI -d /home/greg/.mythtv/MythWeather/ENVCAN on-118"

which runs without errors.  However, when you look in the file it creates, it says 

2010-05-02T00:15:00 2010-05-02T00:00:00
%results = ('pressure' => '1003','visibility' => '24.1','copyright' => 'Copy$ ...

The first date/time on the first line is supposed to be the time of the next update.  The second date/time is supposed to be the current date/time.  If the current time is less than the next update time, the script uses the cached values.  However, the script always thinks it is midnight, so it uses the cached value since midnight is before 00:15.  Once you reach the next day, the date changes, and it allows another update.

I'm running Mythbuntu 10.04 with all the updates applied.  The version of mythweather I'm using is 0.23.0+fixes24269-0ubuntu0+mythbuntu2.





References