Remove Python version from `/_synapse/admin/v1/server_version` (#16380)
There's no reason to expose the full Python version over what is frequently a public API.pull/16422/head
parent
d40a939ff6
commit
5725712d47
|
@ -0,0 +1 @@
|
||||||
|
Remove Python version from `/_synapse/admin/v1/server_version`.
|
|
@ -1,7 +1,7 @@
|
||||||
# Version API
|
# Version API
|
||||||
|
|
||||||
This API returns the running Synapse version and the Python version
|
This API returns the running Synapse version.
|
||||||
on which Synapse is being run. This is useful when a Synapse instance
|
This is useful when a Synapse instance
|
||||||
is behind a proxy that does not forward the 'Server' header (which also
|
is behind a proxy that does not forward the 'Server' header (which also
|
||||||
contains Synapse version information).
|
contains Synapse version information).
|
||||||
|
|
||||||
|
@ -15,7 +15,9 @@ It returns a JSON body like the following:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"server_version": "0.99.2rc1 (b=develop, abcdef123)",
|
"server_version": "0.99.2rc1 (b=develop, abcdef123)"
|
||||||
"python_version": "3.7.8"
|
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
*Changed in Synapse 1.94.0:* The `python_version` key was removed from the
|
||||||
|
response body.
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
import platform
|
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
from typing import TYPE_CHECKING, Optional, Tuple
|
from typing import TYPE_CHECKING, Optional, Tuple
|
||||||
|
|
||||||
|
@ -107,10 +106,7 @@ class VersionServlet(RestServlet):
|
||||||
PATTERNS = admin_patterns("/server_version$")
|
PATTERNS = admin_patterns("/server_version$")
|
||||||
|
|
||||||
def __init__(self, hs: "HomeServer"):
|
def __init__(self, hs: "HomeServer"):
|
||||||
self.res = {
|
self.res = {"server_version": SYNAPSE_VERSION}
|
||||||
"server_version": SYNAPSE_VERSION,
|
|
||||||
"python_version": platform.python_version(),
|
|
||||||
}
|
|
||||||
|
|
||||||
def on_GET(self, request: SynapseRequest) -> Tuple[int, JsonDict]:
|
def on_GET(self, request: SynapseRequest) -> Tuple[int, JsonDict]:
|
||||||
return HTTPStatus.OK, self.res
|
return HTTPStatus.OK, self.res
|
||||||
|
|
|
@ -42,9 +42,7 @@ class VersionTestCase(unittest.HomeserverTestCase):
|
||||||
channel = self.make_request("GET", self.url, shorthand=False)
|
channel = self.make_request("GET", self.url, shorthand=False)
|
||||||
|
|
||||||
self.assertEqual(200, channel.code, msg=channel.json_body)
|
self.assertEqual(200, channel.code, msg=channel.json_body)
|
||||||
self.assertEqual(
|
self.assertEqual({"server_version"}, set(channel.json_body.keys()))
|
||||||
{"server_version", "python_version"}, set(channel.json_body.keys())
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
class QuarantineMediaTestCase(unittest.HomeserverTestCase):
|
||||||
|
|
Loading…
Reference in New Issue