mirror of
https://github.com/element-hq/synapse.git
synced 2026-08-28 05:04:38 +00:00
deploy: 7b10e6b9bc
This commit is contained in:
+1
-1
@@ -38,7 +38,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
@@ -275,13 +275,10 @@ reference only.</p>
|
||||
<h3 id="building-full-schema-dumps"><a class="header" href="#building-full-schema-dumps">Building full schema dumps</a></h3>
|
||||
<p>If you want to recreate these schemas, they need to be made from a database that
|
||||
has had all background updates run.</p>
|
||||
<p>To do so, use <code>scripts-dev/make_full_schema.sh</code>. This will produce new
|
||||
<code>full.sql.postgres</code> and <code>full.sql.sqlite</code> files.</p>
|
||||
<p>Ensure postgres is installed, then run:</p>
|
||||
<pre><code class="language-sh">./scripts-dev/make_full_schema.sh -p postgres_username -o output_dir/
|
||||
</code></pre>
|
||||
<p>NB at the time of writing, this script predates the split into separate <code>state</code>/<code>main</code>
|
||||
databases so will require updates to handle that correctly.</p>
|
||||
<p>To do so, use the <code>make_full_schema.sh</code> script. This will produce new
|
||||
<code>full.sql.postgres</code> and <code>full.sql.sqlite</code> files, after having applied ALL
|
||||
schema deltas and background updates.</p>
|
||||
<p>Run <code>poetry run scripts-dev/make_full_schema.sh -h</code> for usage instructions.</p>
|
||||
<h2 id="delta-files"><a class="header" href="#delta-files">Delta files</a></h2>
|
||||
<p>Delta files define the steps required to upgrade the database from an earlier version.
|
||||
They can be written as either a file containing a series of SQL statements, or a Python
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
@@ -335,11 +335,12 @@ necessary registration and event handling.</p>
|
||||
<ul>
|
||||
<li>will need an <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/synapse/storage/databases/main/thread_subscriptions.py#L75">ID generator</a>
|
||||
<ul>
|
||||
<li>may need <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/synapse/config/workers.py#L177">writer configuration</a>, if there isn’t already an obvious source of configuration for which workers should be designated as writers to your new stream.
|
||||
<li>may need <a href="https://github.com/element-hq/synapse/blob/62a4bc46203880dd5034483b0e84156d03a3a8c6/synapse/config/workers.py#L184-L187">writer configuration</a>, if there isn’t already an obvious source of configuration for which workers should be designated as writers to your new stream.
|
||||
<ul>
|
||||
<li>if adding new writer configuration, add Docker-worker configuration, which lets us configure the writer worker in Complement tests: <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/docker/configure_workers_and_start.py#L331">[1]</a>, <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/docker/configure_workers_and_start.py#L440">[2]</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Ensure that it’s been correctly added to <code>synapse/replication/tcp/handler.py</code> and it’s <code>streams_to_replicate</code> attribute to ensure that changes are actually replicated.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
@@ -279,9 +279,6 @@ may change without notice.
|
||||
</span></strong></p>
|
||||
<p>Called when a user attempts to upload media that would exceed a
|
||||
<a href="../usage/configuration/config_documentation.html#media_upload_limits">configured media upload limit</a>.</p>
|
||||
<p>This callback will only be called on workers which handle
|
||||
<a href="https://spec.matrix.org/v1.15/client-server-api/#post_matrixmediav3upload">POST /_matrix/media/v3/upload</a>
|
||||
requests.</p>
|
||||
<p>This could be used to inform the user that they have reached a media upload limit through
|
||||
some external method.</p>
|
||||
<p>The arguments passed to this callback are:</p>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
+35
-15
@@ -38,7 +38,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
@@ -2012,7 +2012,7 @@ v1.61.0.</p>
|
||||
<tr><td>v1.85.0 – v1.91.2</td><td>v1.83.0</td></tr>
|
||||
<tr><td>v1.92.0 – v1.97.0</td><td>v1.90.0</td></tr>
|
||||
<tr><td>v1.98.0 – v1.105.0</td><td>v1.96.0</td></tr>
|
||||
<tr><td>v1.105.1 – v1.158.0</td><td>v1.100.0</td></tr>
|
||||
<tr><td>v1.105.1 – v1.159.0</td><td>v1.100.0</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
@@ -2032,6 +2032,18 @@ database migrations are complete. You should wait until background updates from
|
||||
each upgrade are complete before moving on to the next upgrade, to avoid
|
||||
stacking them up. You can monitor the currently running background updates with
|
||||
<a href="#status">the Admin API</a>.</p>
|
||||
<h1 id="upgrading-to-v11590"><a class="header" href="#upgrading-to-v11590">Upgrading to v1.159.0</a></h1>
|
||||
<h2 id="change-of-signing-key-expiry-date-for-the-debianubuntu-package-repository-2026"><a class="header" href="#change-of-signing-key-expiry-date-for-the-debianubuntu-package-repository-2026">Change of signing key expiry date for the Debian/Ubuntu package repository (2026)</a></h2>
|
||||
<p>Administrators using the Debian/Ubuntu packages from <code>packages.matrix.org</code>,
|
||||
please be aware that we have recently updated the expiry date on the repository’s GPG signing key,
|
||||
but this change must be imported into your keyring.</p>
|
||||
<p>If you have the <code>matrix-org-archive-keyring</code> package installed and it updates before the current key expires, this should
|
||||
happen automatically.</p>
|
||||
<p>Otherwise, if you see an error similar to <code>The following signatures were invalid: EXPKEYSIG F473DD4473365DE1</code>, you
|
||||
will need to get a fresh copy of the keys. You can do so with:</p>
|
||||
<pre><code class="language-sh">sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
|
||||
</code></pre>
|
||||
<p>The old version of the key will expire on <code>2027-03-15</code>.</p>
|
||||
<h1 id="upgrading-to-v11580"><a class="header" href="#upgrading-to-v11580">Upgrading to v1.158.0</a></h1>
|
||||
<h2 id="drop-support-for-ubuntu-2510-questing-quokka-add-support-for-ubuntu-2604-resolute-raccoon"><a class="header" href="#drop-support-for-ubuntu-2510-questing-quokka-add-support-for-ubuntu-2604-resolute-raccoon">Drop support for Ubuntu 25.10 ‘Questing Quokka’, add support for Ubuntu 26.04 ‘Resolute Raccoon’</a></h2>
|
||||
<p>Ubuntu 25.10 ‘Questing Quokka’ <a href="https://endoflife.date/ubuntu">is end-of-life as of
|
||||
@@ -4461,6 +4473,14 @@ shown.</p>
|
||||
<pre><code class="language-yaml">include_profile_data_on_invite: false
|
||||
</code></pre>
|
||||
<hr>
|
||||
<h3 id="include_profile_updates_in_sync"><a class="header" href="#include_profile_updates_in_sync"><code>include_profile_updates_in_sync</code></a></h3>
|
||||
<p><em>(boolean)</em> Use this option to include updates of other users’ profiles in sync responses, for users who share rooms.
|
||||
Requires an <a href="https://github.com/matrix-org/matrix-spec-proposals/pull/4429">MSC4429</a> compatible client, and is currently limited to legacy sync and local users only.
|
||||
This feature is under development and should be used with caution on busy servers or servers which depend on <code>limit_profile_requests_to_users_who_share_rooms</code> for ensuring profile information doesn’t leak across rooms. Defaults to <code>false</code>.</p>
|
||||
<p>Example configuration:</p>
|
||||
<pre><code class="language-yaml">include_profile_updates_in_sync: true
|
||||
</code></pre>
|
||||
<hr>
|
||||
<h3 id="allow_public_rooms_without_auth"><a class="header" href="#allow_public_rooms_without_auth"><code>allow_public_rooms_without_auth</code></a></h3>
|
||||
<p><em>(boolean)</em> If set to true, removes the need for authentication to access the server’s public rooms directory through the client API, meaning that anyone can query the room directory. Defaults to <code>false</code>.</p>
|
||||
<p>Example configuration:</p>
|
||||
@@ -12243,9 +12263,6 @@ may change without notice.
|
||||
</span></strong></p>
|
||||
<p>Called when a user attempts to upload media that would exceed a
|
||||
<a href="#media_upload_limits">configured media upload limit</a>.</p>
|
||||
<p>This callback will only be called on workers which handle
|
||||
<a href="https://spec.matrix.org/v1.15/client-server-api/#post_matrixmediav3upload">POST /_matrix/media/v3/upload</a>
|
||||
requests.</p>
|
||||
<p>This could be used to inform the user that they have reached a media upload limit through
|
||||
some external method.</p>
|
||||
<p>The arguments passed to this callback are:</p>
|
||||
@@ -12826,9 +12843,14 @@ configured as stream writer for the <code>device_lists</code> stream:</p>
|
||||
</code></pre>
|
||||
<h5 id="the-quarantined_media_changes-stream"><a class="header" href="#the-quarantined_media_changes-stream">The <code>quarantined_media_changes</code> stream</a></h5>
|
||||
<p>The <code>quarantined_media_changes</code> stream supports multiple writers. The following endpoints
|
||||
can be handled by any worker, but should be routed directly to one of the workers
|
||||
configured as stream writer for the <code>quarantined_media_changes</code> stream:</p>
|
||||
must be routed directly to one of the workers configured as stream writer for the
|
||||
<code>quarantined_media_changes</code> stream (which must also be able to run the media
|
||||
repository, as these endpoints are only registered on media-capable workers):</p>
|
||||
<pre><code>^/_synapse/admin/v1/quarantine_media/.*$
|
||||
^/_synapse/admin/v1/room/.*/media/quarantine$
|
||||
^/_synapse/admin/v1/user/.*/media/quarantine$
|
||||
^/_synapse/admin/v1/media/quarantine/.*$
|
||||
^/_synapse/admin/v1/media/unquarantine/.*$
|
||||
</code></pre>
|
||||
<h4 id="restrict-outbound-federation-traffic-to-a-specific-set-of-workers"><a class="header" href="#restrict-outbound-federation-traffic-to-a-specific-set-of-workers">Restrict outbound federation traffic to a specific set of workers</a></h4>
|
||||
<p>The
|
||||
@@ -18937,13 +18959,10 @@ reference only.</p>
|
||||
<h3 id="building-full-schema-dumps"><a class="header" href="#building-full-schema-dumps">Building full schema dumps</a></h3>
|
||||
<p>If you want to recreate these schemas, they need to be made from a database that
|
||||
has had all background updates run.</p>
|
||||
<p>To do so, use <code>scripts-dev/make_full_schema.sh</code>. This will produce new
|
||||
<code>full.sql.postgres</code> and <code>full.sql.sqlite</code> files.</p>
|
||||
<p>Ensure postgres is installed, then run:</p>
|
||||
<pre><code class="language-sh">./scripts-dev/make_full_schema.sh -p postgres_username -o output_dir/
|
||||
</code></pre>
|
||||
<p>NB at the time of writing, this script predates the split into separate <code>state</code>/<code>main</code>
|
||||
databases so will require updates to handle that correctly.</p>
|
||||
<p>To do so, use the <code>make_full_schema.sh</code> script. This will produce new
|
||||
<code>full.sql.postgres</code> and <code>full.sql.sqlite</code> files, after having applied ALL
|
||||
schema deltas and background updates.</p>
|
||||
<p>Run <code>poetry run scripts-dev/make_full_schema.sh -h</code> for usage instructions.</p>
|
||||
<h2 id="delta-files"><a class="header" href="#delta-files">Delta files</a></h2>
|
||||
<p>Delta files define the steps required to upgrade the database from an earlier version.
|
||||
They can be written as either a file containing a series of SQL statements, or a Python
|
||||
@@ -20471,11 +20490,12 @@ necessary registration and event handling.</p>
|
||||
<ul>
|
||||
<li>will need an <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/synapse/storage/databases/main/thread_subscriptions.py#L75">ID generator</a>
|
||||
<ul>
|
||||
<li>may need <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/synapse/config/workers.py#L177">writer configuration</a>, if there isn’t already an obvious source of configuration for which workers should be designated as writers to your new stream.
|
||||
<li>may need <a href="https://github.com/element-hq/synapse/blob/62a4bc46203880dd5034483b0e84156d03a3a8c6/synapse/config/workers.py#L184-L187">writer configuration</a>, if there isn’t already an obvious source of configuration for which workers should be designated as writers to your new stream.
|
||||
<ul>
|
||||
<li>if adding new writer configuration, add Docker-worker configuration, which lets us configure the writer worker in Complement tests: <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/docker/configure_workers_and_start.py#L331">[1]</a>, <a href="https://github.com/element-hq/synapse/blob/4367fb2d078c52959aeca0fe6874539c53e8360d/docker/configure_workers_and_start.py#L440">[2]</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Ensure that it’s been correctly added to <code>synapse/replication/tcp/handler.py</code> and it’s <code>streams_to_replicate</code> attribute to ensure that changes are actually replicated.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"$schema": "https://element-hq.github.io/synapse/latest/schema/v1/meta.schema.json",
|
||||
"$id": "https://element-hq.github.io/synapse/schema/synapse/v1.158/synapse-config.schema.json",
|
||||
"$id": "https://element-hq.github.io/synapse/schema/synapse/v1.159/synapse-config.schema.json",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"modules": {
|
||||
@@ -219,6 +219,14 @@
|
||||
false
|
||||
]
|
||||
},
|
||||
"include_profile_updates_in_sync": {
|
||||
"type": "boolean",
|
||||
"description": "Use this option to include updates of other users' profiles in sync responses, for users who share rooms.\nRequires an [MSC4429](https://github.com/matrix-org/matrix-spec-proposals/pull/4429) compatible client, and is currently limited to legacy sync and local users only.\nThis feature is under development and should be used with caution on busy servers or servers which depend on `limit_profile_requests_to_users_who_share_rooms` for ensuring profile information doesn't leak across rooms.",
|
||||
"default": false,
|
||||
"examples": [
|
||||
true
|
||||
]
|
||||
},
|
||||
"allow_public_rooms_without_auth": {
|
||||
"type": "boolean",
|
||||
"description": "If set to true, removes the need for authentication to access the server's public rooms directory through the client API, meaning that anyone can query the room directory.",
|
||||
|
||||
@@ -437,7 +437,7 @@ window.search = window.search || {};
|
||||
if (yes) {
|
||||
loadSearchScript(
|
||||
window.path_to_searchindex_js ||
|
||||
path_to_root + 'searchindex-7fd3c2af.js',
|
||||
path_to_root + 'searchindex-35ac8dfb.js',
|
||||
'mdbook-search-index');
|
||||
search_wrap.classList.remove('hidden');
|
||||
searchicon.setAttribute('aria-expanded', 'true');
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
|
||||
+14
-2
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="toc-64310643.js"></script>
|
||||
@@ -310,7 +310,7 @@ v1.61.0.</p>
|
||||
<tr><td>v1.85.0 – v1.91.2</td><td>v1.83.0</td></tr>
|
||||
<tr><td>v1.92.0 – v1.97.0</td><td>v1.90.0</td></tr>
|
||||
<tr><td>v1.98.0 – v1.105.0</td><td>v1.96.0</td></tr>
|
||||
<tr><td>v1.105.1 – v1.158.0</td><td>v1.100.0</td></tr>
|
||||
<tr><td>v1.105.1 – v1.159.0</td><td>v1.100.0</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
@@ -330,6 +330,18 @@ database migrations are complete. You should wait until background updates from
|
||||
each upgrade are complete before moving on to the next upgrade, to avoid
|
||||
stacking them up. You can monitor the currently running background updates with
|
||||
<a href="usage/administration/admin_api/background_updates.html#status">the Admin API</a>.</p>
|
||||
<h1 id="upgrading-to-v11590"><a class="header" href="#upgrading-to-v11590">Upgrading to v1.159.0</a></h1>
|
||||
<h2 id="change-of-signing-key-expiry-date-for-the-debianubuntu-package-repository-2026"><a class="header" href="#change-of-signing-key-expiry-date-for-the-debianubuntu-package-repository-2026">Change of signing key expiry date for the Debian/Ubuntu package repository (2026)</a></h2>
|
||||
<p>Administrators using the Debian/Ubuntu packages from <code>packages.matrix.org</code>,
|
||||
please be aware that we have recently updated the expiry date on the repository’s GPG signing key,
|
||||
but this change must be imported into your keyring.</p>
|
||||
<p>If you have the <code>matrix-org-archive-keyring</code> package installed and it updates before the current key expires, this should
|
||||
happen automatically.</p>
|
||||
<p>Otherwise, if you see an error similar to <code>The following signatures were invalid: EXPKEYSIG F473DD4473365DE1</code>, you
|
||||
will need to get a fresh copy of the keys. You can do so with:</p>
|
||||
<pre><code class="language-sh">sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
|
||||
</code></pre>
|
||||
<p>The old version of the key will expire on <code>2027-03-15</code>.</p>
|
||||
<h1 id="upgrading-to-v11580"><a class="header" href="#upgrading-to-v11580">Upgrading to v1.158.0</a></h1>
|
||||
<h2 id="drop-support-for-ubuntu-2510-questing-quokka-add-support-for-ubuntu-2604-resolute-raccoon"><a class="header" href="#drop-support-for-ubuntu-2510-questing-quokka-add-support-for-ubuntu-2604-resolute-raccoon">Drop support for Ubuntu 25.10 ‘Questing Quokka’, add support for Ubuntu 26.04 ‘Resolute Raccoon’</a></h2>
|
||||
<p>Ubuntu 25.10 ‘Questing Quokka’ <a href="https://endoflife.date/ubuntu">is end-of-life as of
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
const path_to_root = "../../";
|
||||
const default_light_theme = "light";
|
||||
const default_dark_theme = "navy";
|
||||
window.path_to_searchindex_js = "../../searchindex-7fd3c2af.js";
|
||||
window.path_to_searchindex_js = "../../searchindex-35ac8dfb.js";
|
||||
</script>
|
||||
<!-- Start loading toc.js asap -->
|
||||
<script src="../../toc-64310643.js"></script>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user