after upgrading from 13.30.0 to 13.34.0 I noticed that mails are no longer being sent. Looking at the error logs I found a message titled ‘sendmail’ with the following body:
Traceback (most recent call last):
File "apps/frappe/frappe/utils/background_jobs.py", line 134, in execute_job
method(**kwargs)
File "apps/frappe/frappe/__init__.py", line 661, in sendmail
File "apps/frappe/frappe/email/queue.py", line 21, in <module>
from frappe.utils import (
ImportError: cannot import name 'get_string_between' from 'frappe.utils' (apps/frappe/frappe/utils/__init__.py)
Machine is running Centos 8.5 with Python 3.8.8. Anyone already seen and fixed this?
Actually I have first updated my bench and then updated ERPnext to the most recent version which indeed are 13.33.0 for the bench and 13.34.0 for ERPnext.
Meanwhile I managed to fix the problem and the cure actually was quite simple: it seems as if “bench update” does not reset ERPnext into a completely sane state, so while the running instance was still thinking it was 13.30.0 it in fact already had the code for 13.34.0 under its hood. So doing a “bench restart” did exactly that and the mail subsystem startet to work properly again.