Hello! I recently installed(5.0.5) and upgraded(6.0.2) Review Board. I am testing out email service but getting error once review is updated. Error below.
- Test email from settings was successfully sent. - I still receive error emails about this but not review emails Any idea what has caused this and how to fix it? Thanks! UnicodeDecodeError at /api/review-requests/3/reviews/ 'ascii' codec can't decode byte 0xc3 in position 7622: ordinal not in range(128) Request Method: POST Request URL: http://10.17.17.161/api/review-requests/3/reviews/ Django Version: 3.2.25 Python Executable: /usr/bin/python3 Python Version: 3.10.12 Python Path: ['/var/www/10.17.17.161/conf', '/var/www/10.17.17.161/venv/lib/python3.10/site-packages', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/usr/lib/python3.10/lib-dynload', '/usr/local/lib/python3.10/dist-packages', '/usr/lib/python3/dist-packages'] Server time: Tue, 23 Apr 2024 15:40:30 +0000 Installed Applications: ['corsheaders', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sites', 'django.contrib.sessions', 'django.contrib.staticfiles', 'djblets', 'djblets.avatars', 'djblets.configforms', 'djblets.datagrid', 'djblets.extensions', 'djblets.features', 'djblets.feedview', 'djblets.forms', 'djblets.gravatars', 'djblets.integrations', 'djblets.log', 'djblets.pipeline', 'djblets.privacy', 'djblets.recaptcha', 'djblets.siteconfig', 'djblets.util', 'haystack', 'oauth2_provider', 'pipeline', 'reviewboard', 'reviewboard.accounts', 'reviewboard.actions', 'reviewboard.admin', 'reviewboard.attachments', 'reviewboard.avatars', 'reviewboard.changedescs', 'reviewboard.diffviewer', 'reviewboard.extensions', 'reviewboard.hostingsvcs', 'reviewboard.integrations', 'reviewboard.notifications', 'reviewboard.oauth', 'reviewboard.reviews', 'reviewboard.scmtools', 'reviewboard.site', 'reviewboard.webapi', 'django_evolution', 'rbintegrations'] Installed Middleware: ['django.middleware.gzip.GZipMiddleware', 'reviewboard.admin.middleware.init_review_board_middleware', 'corsheaders.middleware.CorsMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.http.ConditionalGetMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'djblets.siteconfig.middleware.SettingsMiddleware', 'reviewboard.admin.middleware.load_settings_middleware', 'djblets.extensions.middleware.ExtensionsMiddleware', 'djblets.integrations.middleware.IntegrationsMiddleware', 'djblets.log.middleware.LoggingMiddleware', 'reviewboard.accounts.middleware.timezone_middleware', 'reviewboard.accounts.middleware.update_last_login_middleware', 'reviewboard.admin.middleware.check_updates_required_middleware', 'reviewboard.accounts.middleware.x509_auth_middleware', 'reviewboard.site.middleware.LocalSiteMiddleware', 'djblets.extensions.middleware.ExtensionsMiddlewareRunner', 'reviewboard.admin.middleware.ExtraExceptionInfoMiddleware'] Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/django/core/handlers/exception.py", line 47, in inner response = get_response(request) File "/usr/local/lib/python3.10/dist-packages/django/core/handlers/base.py", line 181, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib/python3.10/dist-packages/django/views/decorators/vary.py", line 20, in inner_func response = func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/resources/base.py", line 650, in __call__ result = self.call_method_view( File "/usr/local/lib/python3.10/dist-packages/reviewboard/webapi/base.py", line 348, in call_method_view return super(WebAPIResource, self).call_method_view( File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/resources/mixins/api_tokens.py", line 62, in call_method_view return super(ResourceAPITokenMixin, self).call_method_view( File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/resources/mixins/oauth2_tokens.py", line 99, in call_method_view return super(ResourceOAuth2TokenMixin, self).call_method_view( File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/resources/base.py", line 941, in call_method_view return view(request, *args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/resources/base.py", line 1123, in post return self.create(request, File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/decorators.py", line 156, in _call return view_func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/reviewboard/webapi/decorators.py", line 165, in _check return view_func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/decorators.py", line 156, in _call return view_func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/decorators.py", line 177, in _checklogin return view_func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/decorators.py", line 156, in _call return view_func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/decorators.py", line 156, in _call return view_func(*args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/webapi/decorators.py", line 323, in _validate return view_func(*args, **new_kwargs) File "/usr/local/lib/python3.10/dist-packages/reviewboard/webapi/resources/base_review.py", line 257, in create result = self.update_review(request, review, *args, **kwargs) File "/usr/local/lib/python3.10/dist-packages/reviewboard/webapi/resources/review.py", line 121, in update_review return super(ReviewResource, self).update_review( File "/usr/local/lib/python3.10/dist-packages/reviewboard/webapi/resources/base_review.py", line 389, in update_review review.publish(user=request.user, File "/usr/local/lib/python3.10/dist-packages/reviewboard/reviews/models/review.py", line 520, in publish review_published.send(sender=self.__class__, File "/usr/local/lib/python3.10/dist-packages/django/dispatch/dispatcher.py", line 180, in send return [ File "/usr/local/lib/python3.10/dist-packages/django/dispatch/dispatcher.py", line 181, in <listcomp> (receiver, receiver(signal=self, sender=sender, **named)) File "/usr/local/lib/python3.10/dist-packages/reviewboard/notifications/email/signal_handlers.py", line 155, in send_review_published_mail message, sent = send_email(prepare_review_published_mail, File "/usr/local/lib/python3.10/dist-packages/reviewboard/notifications/email/utils.py", line 330, in send_email message = email_builder(**kwargs) File "/usr/local/lib/python3.10/dist-packages/reviewboard/notifications/email/message.py", line 429, in prepare_review_published_mail return prepare_base_review_request_mail( File "/usr/local/lib/python3.10/dist-packages/reviewboard/notifications/email/message.py", line 244, in prepare_base_review_request_mail return EmailMessage(subject=subject.strip(), File "/usr/local/lib/python3.10/dist-packages/reviewboard/notifications/email/message.py", line 70, in __init__ super(EmailMessage, self).__init__( File "/usr/local/lib/python3.10/dist-packages/housekeeping/functions.py", line 411, in _call return func(*new_args, **new_kwargs) File "/usr/local/lib/python3.10/dist-packages/djblets/mail/message.py", line 305, in __init__ not is_email_allowed_by_dmarc(parsed_from_email))): File "/usr/local/lib/python3.10/dist-packages/djblets/mail/dmarc.py", line 383, in is_email_allowed_by_dmarc dmarc_record = get_dmarc_record(hostname) File "/usr/local/lib/python3.10/dist-packages/djblets/mail/dmarc.py", line 342, in get_dmarc_record psl = PublicSuffixList(fp) File "/usr/local/lib/python3.10/dist-packages/publicsuffix/__init__.py", line 54, in __init__ root = self._build_structure(input_file) File "/usr/local/lib/python3.10/dist-packages/publicsuffix/__init__.py", line 98, in _build_structure for line in fp: File "/usr/lib/python3.10/encodings/ascii.py", line 26, in decode return codecs.ascii_decode(input, self.errors)[0] Exception Type: UnicodeDecodeError at /api/review-requests/3/reviews/ Exception Value: 'ascii' codec can't decode byte 0xc3 in position 7622: ordinal not in range(128) -- Supercharge your Review Board with Power Pack: https://www.reviewboard.org/powerpack/ Want us to host Review Board for you? Check out RBCommons: https://rbcommons.com/ Happy user? Let us know! https://www.reviewboard.org/users/ --- You received this message because you are subscribed to the Google Groups "Review Board Community" group. To unsubscribe from this group and stop receiving emails from it, send an email to reviewboard+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/reviewboard/c79039b8-9dd3-4ff9-a0b2-eb37763bda6en%40googlegroups.com.