snapshot of https://github.com/zulip/zulip.git @ 48c69911c7dd4e03b20552eb3bd77ad8151c1357 (2026-09-15)
Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled

This commit is contained in:
upstream-mirror
2026-09-15 15:05:30 +05:00
commit 64898b2c79
8999 changed files with 1757358 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
{% extends "zerver/config_error/social-container.html" %}
{% block error_content %}
<p>
You are attempting to use the <strong>Apple auth backend</strong>, but it is
not properly configured. To configure, please check the following:
</p>
<ul>
<li>
You have registered
<code>{{ root_domain_url }}/complete/apple/</code> as the callback URL
for your Services ID in Apple’s developer console. You can enable “Sign
in with Apple” for an app at
<a href="https://developer.apple.com/account/resources/">Certificates,
Identifiers &amp; Profiles</a>.
</li>
<li>
You have set <code>SOCIAL_AUTH_APPLE_SERVICES_ID</code>,
<code>SOCIAL_AUTH_APPLE_APP_ID</code>,
<code>SOCIAL_AUTH_APPLE_TEAM</code>, and
<code>SOCIAL_AUTH_APPLE_KEY</code> in
<code>{{ auth_settings_path }}</code>
and stored the private key provided by Apple at
<code>/etc/zulip/apple-auth-key.p8</code> on the Zulip server, with
proper permissions set.
</li>
<li>
Navigate back to the login page and attempt the “Sign in with Apple”
flow again.
</li>
</ul>
{{ super() }}
{% endblock %}

View File

@@ -0,0 +1,34 @@
{% extends "zerver/portico.html" %}
{% block title %}
<title>{{ _("Configuration error") }} | Zulip</title>
{% endblock %}
{% block portico_content %}
<div id="config_error_page" class="flex full-page">
<div class="new-style">
<div class="pitch">
<h1>
{{ _("Configuration error") }}
</h1>
</div>
<div class="white-box">
<div class="errorbox config-error">
<div class="errorcontent">
{% block error_body %}
<p>
{% block error_content %}
{% endblock %}
</p>
<p>After making your changes, remember to restart the Zulip server.</p>
<p><a href="">Refresh</a> to try again or
<a href="{{ go_back_to_url }}">go back to {{ go_back_to_url_name }}</a>.</p>
{% endblock %}
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,23 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
<p>
You attempted to use the <code>DevAuthBackend</code> authentication method,
which is used for logging in without a password in the Zulip development
environment.
</p>
<p>This backend is not available for this realm, either because:</p>
<ul>
<li>This Zulip server is configured as a production server.</li>
<li>
<code>DevAuthBackend</code> is disabled in
<code>AUTHENTICATION_BACKENDS</code> in
<code>{{ auth_settings_path }}</code>.
</li>
<li>
You disabled this authentication backend in
<a href="/help/configure-authentication-methods">this realm’s
authentication settings</a>.
</li>
</ul>
{% endblock %}

View File

@@ -0,0 +1,28 @@
{% extends "zerver/config_error/social-container.html" %}
{% block error_content %}
<p>
You are attempting to use the <strong>Discord auth backend</strong>, but it
is not properly configured. To configure, please check the following:
</p>
<ul>
<li>
You have added
<code>{{ root_domain_url }}/complete/discord/</code> as the callback URL
in the OAuth application in Discord Developer Portal. You can register
OAuth apps at <a href="https://discord.com/developers/applications">Discord
Developer Portal</a>.
</li>
<li>
You have set <code>{{ client_id_key_name }}</code> in
<code>{{ auth_settings_path }}</code> and
<code>social_auth_discord_secret</code> in
<code>{{ secrets_path }}</code> with the values from your OAuth
application.
</li>
<li>
Navigate back to the login page and attempt the Discord auth flow again.
</li>
</ul>
{{ super() }}
{% endblock %}

View File

@@ -0,0 +1,28 @@
{% extends "zerver/config_error/social-container.html" %}
{% block error_content %}
<p>
You are attempting to use the <strong>GitHub auth backend</strong>, but it
is not properly configured. To configure, please check the following:
</p>
<ul>
<li>
You have added
<code>{{ root_domain_url }}/complete/github/</code> as the callback URL
in the OAuth application in GitHub. You can create OAuth apps from
<a href="https://github.com/settings/developers">GitHub’s developer
site</a>.
</li>
<li>
You have set <code>{{ client_id_key_name }}</code> in
<code>{{ auth_settings_path }}</code> and
<code>social_auth_github_secret</code> in
<code>{{ secrets_path }}</code> with the values from your OAuth
application.
</li>
<li>
Navigate back to the login page and attempt the GitHub auth flow again.
</li>
</ul>
{{ super() }}
{% endblock %}

View File

@@ -0,0 +1,28 @@
{% extends "zerver/config_error/social-container.html" %}
{% block error_content %}
<p>
You are attempting to use the <strong>GitLab auth backend</strong>, but it
is not properly configured. To configure, please check the following:
</p>
<ul>
<li>
You have added
<code>{{ root_domain_url }}/complete/gitlab/</code> as the callback URL
in the OAuth application in GitLab. You can register OAuth apps at
<a href="https://gitlab.com/profile/applications">GitLab
applications</a>.
</li>
<li>
You have set <code>{{ client_id_key_name }}</code> in
<code>{{ auth_settings_path }}</code> and
<code>social_auth_gitlab_secret</code> in
<code>{{ secrets_path }}</code> with the values from your OAuth
application.
</li>
<li>
Navigate back to the login page and attempt the GitLab auth flow again.
</li>
</ul>
{{ super() }}
{% endblock %}

View File

@@ -0,0 +1,31 @@
{% extends "zerver/config_error/social-container.html" %}
{% block error_content %}
<p>
You are attempting to use the <strong>Google auth backend</strong>, but it
is not properly configured. To configure, please check the following:
</p>
<ul>
<li>
You have created a Google OAuth2 client and enabled the Identity Toolkit
API. You can create OAuth2 apps at
<a href="https://console.developers.google.com">the Google developer
console</a>.
</li>
<li>
You have configured your OAuth2 client to allow redirects to your
server’s Google auth URL:
<code>{{ root_domain_url }}/complete/google/</code>.
</li>
<li>
You have set <code>{{ client_id_key_name }}</code> in
<code>{{ auth_settings_path }}</code> and
<code>social_auth_google_secret</code> in
<code>{{ secrets_path }}</code>.
</li>
<li>
Navigate back to the login page and attempt the Google auth flow again.
</li>
</ul>
{{ super() }}
{% endblock %}

View File

@@ -0,0 +1,9 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
{% trans %}
You are trying to log in using LDAP without creating an
organization first. Please use EmailAuthBackend to create
your organization and then try again.
{% endtrans %}
{% endblock %}

View File

@@ -0,0 +1,8 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
{# TODO: Improve the config error page for OIDC #}
<p>
The OpenID Connect backend is not configured correctly.
</p>
{% endblock %}

View File

@@ -0,0 +1,92 @@
{% extends "zerver/config_error/container.html" %}
{% macro setting() -%}
{%- if helm_config -%}
<code>zulip.environment.LOADBALANCER_IPS</code> in your Helm values
{%- elif docker_config -%}
<code>LOADBALANCER_IPS</code> in your Docker image's environment
{%- else -%}
<code>ips</code> in the <code>[loadbalancer]</code> section of <code>/etc/zulip/zulip.conf</code>
{%- endif -%}
{%- endmacro %}
{% block error_body %}
{% if not current_proxies and not x_forwarded_for %}
<p>
You have not configured any reverse proxies in {{ setting() }},
and an HTTP request was received without any reverse proxy
headers. Zulip requires that all client traffic to it be over
HTTPS. Since you have configured Zulip itself to be served over
HTTP, it must be placed behind a proxy which does TLS termination.
</p>
<p>
You must configure a reverse proxy in front of Zulip which serves
traffic over HTTPS, and configure Zulip to trust that proxy, by
adding its IP to {{ setting() }}. See our <a href="https://zulip.readthedocs.io/en/stable/production/reverse-proxies.html"
>documentation about deploying behind reverse proxies</a> for more
details.
</p>
{% elif not current_proxies %}
<p>
You have not configured any reverse proxies in {{ setting() }},
but reverse proxy headers were detected in a request from
<code>{{ remote_addr }}</code>.
</p>
<p>
Add <code>{{ remote_addr }}</code> to {{ setting() }} and restart
your Zulip server. See
our <a href="https://zulip.readthedocs.io/en/stable/production/reverse-proxies.html"
>documentation about deploying behind reverse proxies</a> for more
details.
</p>
{% elif not x_forwarded_proto %}
<p>
You have configured reverse proxies (<code>{{ current_proxies }}</code>),
and traffic is being served through them, but the remote proxy did
not send an <code>X-Forwarded-Proto</code> header.
</p>
<p>
Please read our <a href="https://zulip.readthedocs.io/en/stable/production/reverse-proxies.html"
>documentation about configuring your reverse proxy</a>, and
configure your proxy to send an <code>X-Forwarded-Proto</code>
header.
</p>
{% else %}
<p>
You have configured reverse proxies (<code>{{ current_proxies }}</code>),
but this request did not come from a matching IP address -- it
came from <code>{{ remote_addr }}</code>.
</p>
<p>
You should update {{ setting() }} to include <code>{{ remote_addr }}</code>,
and restart your Zulip server. See our <a href="https://zulip.readthedocs.io/en/stable/production/reverse-proxies.html"
>documentation about deploying behind reverse proxies</a> for more
details.
</p>
{% endif %}
<hr />
<h2>Request headers:</h2>
<pre>
{% for item in all_headers -%}
{% if item[1] != "" -%}
{{ item[0] }}: {{ item[1] }}
{% endif -%}
{% endfor -%}
</pre>
{% endblock %}

View File

@@ -0,0 +1,9 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
{% trans doc_url="https://zulip.readthedocs.io/en/latest/production/mobile-push-notifications.html" %}
This server is not configured to use push notifications. For instructions on how to
configure push notifications, please see the
<a href="{{ doc_url }}">documentation</a>.
{% endtrans %}
{% endblock %}

View File

@@ -0,0 +1,8 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
<p>
Authentication via the REMOTE_USER header is
disabled in `/etc/zulip/settings.py`.
</p>
{% endblock %}

View File

@@ -0,0 +1,7 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
<p>
The REMOTE_USER header is not set.
</p>
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
<p>
SAML authentication is either not enabled or misconfigured. Have a look at
our <a href="https://zulip.readthedocs.io/en/latest/production/authentication-methods.html#SAML">setup guide</a>.
</p>
{% if development_environment %}
<p>
See also the
<a href="https://zulip.readthedocs.io/en/latest/development/authentication.html#saml">SAML guide</a>
for the development environment.
</p>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,26 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
<p>
It appears there are problems with the
email configuration.
</p>
{% if not development_environment %}
<p>
See <code>/var/log/zulip/errors.log</code> for more
details on the error.
</p>
<p>
You may also want to test your email configuration,
as described in the
<a href="https://zulip.readthedocs.io/en/latest/production/email.html">Production installation docs</a>.
</p>
{% else %}
<p>
Please have a look at our
<a target="_blank" rel="noopener noreferrer" href="https://zulip.readthedocs.io/en/latest/subsystems/email.html#development-and-testing"> setup guide</a>
for forwarding emails sent in development
environment to an email account.
</p>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,17 @@
{% extends "zerver/config_error/container.html" %}
{% block error_content %}
{% if development %}
<p>
For more information, have a look at the
<a href="https://zulip.readthedocs.io/en/latest/development/authentication.html#{{ social_backend_name }}">authentication setup guide</a>
for the development environment.
</p>
{% else %}
<p>
For more information, have a look at our
<a href="https://zulip.readthedocs.io/en/latest/production/authentication-methods.html">authentication setup guide</a>
and the comments in <code>{{ settings_comments_path }}</code>.
</p>
{% endif %}
{% endblock %}