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/CAPq0zEAz2v8PFCnkNaP5HpmVazcj2u%2BmuXFjOrtYiMf87pWnwA%40mail.gmail.com.

Reply via email to