Thank you both so much the quotes fixed it where I formatted the string 
with a comma. Great lesson for me.

You're awesome......

On Sunday, August 9, 2026 at 11:48:05 AM UTC-7 Tom Keffer wrote:

> No problem at all.
>
> There are actually two different classes of errors in the log.
>
> *Syntax error*
>
> The current time is being explicitly formatted with a tag something like 
> $current.dateTime.format(%A, 
> %B %d, %Y %H%M). Note the lack of quotation marks around the format. It 
> should be  $current.dateTime.format("%A, %B %d, %Y %H%M"). Here's an 
> example in the log:
>
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: 
> Evaluation of template /etc/weewx/skins/Seasons/statistics.html.tmpl failed 
> with exception '<class 'SyntaxError'>'
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
> Ignoring template /etc/weewx/skins/Seasons/statistics.html.tmpl
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
> Reason: invalid syntax (<string>, line 1)
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>  Traceback (most recent call last):
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 338, in generate
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      unicode_string = compiled_template.respond()
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "_etc_weewx_skins_Seasons_statistics_html_tmpl.py", line 178, in 
> respond
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/lib/python3/dist-packages/Cheetah/Template.py", line 1712, in 
> _handleCheetahInclude
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      self._CHEETAH__cheetahIncludes[_includeID].respond(trans)
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "_etc_weewx_skins_Seasons_titlebar_inc.py", line 161, in respond
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "_etc_weewx_skins_Seasons_titlebar_inc.py", line 78, in 
> __errorCatcher2
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "<string>", line 1
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      VFN(VFFSL(SL,"current.dateTime",True),"format",False)(format_string=%A, 
> %B %d, %Y %H%M)
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>                                                                          ^
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>  SyntaxError: invalid syntax
>
> Nowhere in the Seasons skin is the format "%A, %B %d, %Y %H%M" used, with 
> or without the quotation marks. 
>
> A common point between all these errors is the template include file 
> "Seasons/titlebar.inc". I modified my version and replaced
>
>     <p class="lastupdate">$current.dateTime</p>
>
> with
>
>     <p class="lastupdate">$current.dateTime.format(%A, %B %d, %Y %H%M)</p>
>
> and got precisely the same error:
>
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> Evaluation of template 
> /home/tkeffer/weewx-data/skins/Seasons/statistics.html.tmpl failed with 
> exception '<class 'SyntaxError'>'
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> **** Ignoring template 
> /home/tkeffer/weewx-data/skins/Seasons/statistics.html.tmpl
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> **** Reason: invalid syntax (<string>, line 1)
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****  Traceback (most recent call last):
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****    File "/home/tkeffer/git/weewx/src/weewx/cheetahgenerator.py", line 
> 337, in generate
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****      unicode_string = compiled_template.respond()
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****    File 
> "_home_tkeffer_weewx_data_skins_Seasons_statistics_html_tmpl.py", line 178, 
> in respond
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****    File 
> "/home/tkeffer/git/weewx/.venv-3.13/lib/python3.13/site-packages/Cheetah/Template.py",
>  
> line 1712, in _handleCheetahInclude
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****      self._CHEETAH__cheetahIncludes[_includeID].respond(trans)
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****    File "_home_tkeffer_weewx_data_skins_Seasons_titlebar_inc.py", line 
> 161, in respond
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****    File "_home_tkeffer_weewx_data_skins_Seasons_titlebar_inc.py", line 
> 78, in __errorCatcher2
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****    File "<string>", line 1
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****      VFN(VFFSL(SL,"current.dateTime",True),"format",False)(%A, %B %d, 
> %Y %H%M)
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****                                                            ^
> Aug 09 11:31:27 NUC-black weectl[1241232]: ERROR weewx.cheetahgenerator: 
> ****  SyntaxError: invalid syntax
>
> Is it possible that you changed "Seasons/titlebar.inc" and forgot the 
> quotation marks?
>
> *strftime() error*
>
> The second class of errors look like this:
>
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: 
> Evaluation of template /etc/weewx/skins/Seasons/rss.xml.tmpl failed with 
> exception '<class 'TypeError'>'
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
> Ignoring template /etc/weewx/skins/Seasons/rss.xml.tmpl
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
> Reason: strftime() argument 1 must be str, not list
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>  Traceback (most recent call last):
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 338, in generate
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      unicode_string = compiled_template.respond()
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "_etc_weewx_skins_Seasons_rss_xml_tmpl.py", line 144, in respond
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 780, in filter
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      filtered = str(val)
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/units.py", line 1083, in __str__
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      return self.toString()
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>             ~~~~~~~~~~~~~^^
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/units.py", line 1076, in toString
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      s = self.formatter.toString(self.value_t, self.context, 
> addLabel=addLabel,
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>                                  useThisFormat=useThisFormat, 
> None_string=None_string,
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>                                  localize=localize)
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/units.py", line 734, in toString
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      s = self._to_string(val_t, context, addLabel, useThisFormat, 
> None_string, localize)
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>    File "/usr/share/weewx/weewx/units.py", line 784, in _to_string
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>      val_str = time.strftime(self.time_format_dict.get(context, 
> DEFAULT_TIME_FORMAT),
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>                              time.localtime(t))
> Aug 08 04:30:15 babcock weewxd[279844]: ERROR weewx.cheetahgenerator: **** 
>  TypeError: strftime() argument 1 must be str, not list
>
> WeeWX allows customization of how times are formatted. You typically do 
> this by modifying / adding entries in weewx.conf under [[[[TimeFormats]]]]. 
> I suspect that you modified the "current" entry by adding a comma. This 
> would cause the parser for ConfigObj to interpret it as a list. For example,
>
>             [[[[TimeFormats]]]]
>                 # day        = %H:%M
>                 # week       = %H:%M on %A
>                 # month      = %d-%b-%Y %H:%M
>                 # year       = %d-%b-%Y %H:%M
>                 # rainyear   = %d-%b-%Y %H:%M
>                 # current    = %d-%b-%Y %H:%M
>
> was changed to
>
>             [[[[TimeFormats]]]]
>                 # day        = %H:%M
>                 # week       = %H:%M on %A
>                 # month      = %d-%b-%Y %H:%M
>                 # year       = %d-%b-%Y %H:%M
>                 # rainyear   = %d-%b-%Y %H:%M
>                 current    = %d-%b-%Y, %H:%M
>
> If you're going to do this, you should add quotation marks:
>
>             [[[[TimeFormats]]]]
>                 # day        = %H:%M
>                 # week       = %H:%M on %A
>                 # month      = %d-%b-%Y %H:%M
>                 # year       = %d-%b-%Y %H:%M
>                 # rainyear   = %d-%b-%Y %H:%M
>                 current    = "%d-%b-%Y, %H:%M"
>
>
> Added in postscript: I see that John Kline has given you essentially the 
> same answer, except far more succinctly than my overly wordy response!
>
> -tk
>
> On Sun, Aug 9, 2026 at 8:56 AM [email protected] <[email protected]> 
> wrote:
>
>> Thank you.  Sorry I'm so awkward here.  I have read many but never posted 
>> before. Here is the weewxd log from this morning.
>> I hope I got it tight this time.
>>
>> On Saturday, August 8, 2026 at 4:22:04 PM UTC-7 Tom Keffer wrote:
>>
>>> I don't know, but could you set debug=1, restart weewx, let it run 
>>> through the first reporting cycle, then post the log. There just isn't 
>>> enough here to make a diagnosis.
>>>
>>> On Sat, Aug 8, 2026 at 4:09 PM [email protected] <[email protected]> 
>>> wrote:
>>>
>>>> After updating 2 of the 5 weewx weather servers the Cheetah generator 
>>>> fails to create html files. Here's the log. It claims there is a syntax 
>>>> error and errors out all the reports
>>>>
>>>>  08 17:00:15 babcock weewxd[410964]: ERROR weewx.cheetahgenerator: **** 
>>>> Reason: invalid syntax (<string>, line 1)
>>>> Aug 08 17:00:15 babcock weewxd[410964]: ERROR weewx.cheetahgenerator: 
>>>> **** Ignoring template /etc/weewx/skins/Seasons/index.html.tmpl
>>>> Aug 08 17:00:15 babcock weewxd[410964]: ERROR weewx.cheetahgenerator: 
>>>> Evaluation of template /etc/weewx/skins/Seasons/index.html.tmpl failed 
>>>> with 
>>>> exception '<class 'SyntaxError'>'
>>>> Aug 08 17:00:15 babcock weewxd[410964]: INFO weewx.manager: Added 
>>>> record 2026-08-08 17:00:00 MDT (1786230000) to daily summary in 'weewx.sdb'
>>>> Aug 08 17:00:15 babcock weewxd[410964]: INFO weewx.manager: Added 
>>>> record 2026-08-08 17:00:00 MDT (1786230000) to database 'weewx.sdb'
>>>>
>>>> This error sounds familiar to me but I can't find anything on it.  The 
>>>> template files are normal. and Cheetah makes the .png files but no html 
>>>> for 
>>>> the pages
>>>>
>>>> I have removed and re-installed weewx on two machines (Pi 4 and a Pi 5) 
>>>> and still have issues.  What have I missed?
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "weewx-user" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To view this discussion visit 
>>>> https://groups.google.com/d/msgid/weewx-user/aed73623-7a6f-48c1-bd5a-32c44e330896n%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/weewx-user/aed73623-7a6f-48c1-bd5a-32c44e330896n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "weewx-user" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion visit 
>> https://groups.google.com/d/msgid/weewx-user/ead1f50a-fe29-4b7b-92e0-8bd6a7f92893n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/weewx-user/ead1f50a-fe29-4b7b-92e0-8bd6a7f92893n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/weewx-user/ce3ef778-2447-4b49-9e2c-941604de1a26n%40googlegroups.com.

Reply via email to