Releases: element-hq/matrix-content-scanner-python
v1.3.0
-
The
crypto.pickle_pathandcrypto.pickle_keyoptions have been
removed. In their place, the requiredcrypto.request_secret_path
option must be set to the path of a file containing a Base64-encoded
X25519 private key.The private key file can be generated using
openssl:openssl genpkey -algorithm X25519 -outform DER \ | openssl asn1parse -inform DER -strparse 14 -out /dev/stdout -noout \ | openssl enc -base64 -A > ./path/to/request_secretOr if you have an existing private key PEM file that you'd like to
use, it can be converted to a base64-encoded version of its raw bytes
using the following:openssl pkey -in x25519-private.pem -outform DER \ | openssl asn1parse -inform DER -strparse 14 -out /dev/stdout -noout \ | openssl enc -base64 -A > ./path/to/request_secretOtherwise if you are operating in a managed deployment environment
(i.e. Kubernetes) it is recommend to use its tooling for generating
the file instead.Note that existing deployments generating an entirely new key is
acceptable and will not break clients. Clients will fetch the public
key from MCS on every request; thus rotating said will not affect
clients.If you use an array of MCS instances that are load balanced, ensure
each are using the same key so that a client does not fetch the public
component of one key from one MCS instance, and try to encrypt to
another instance. (#82) -
Drop support for Python 3.8 and 3.9 as they are now end-of-life.
Note that this MCS version does not yet support Python 3.14. Please
use Python interpreter with version 3.10-3.13 if running MCS directly.
The official docker file uses Python 3.11. (#81) -
A new option,
download.headers_to_forward, allows specifying headers
that will be copied and forwarded from the client request to the
upstream media server when fetching encrypted media. See the sample
config file for more details. (#80) -
Update link to
PkEncryptionindocs/api.mdto point to an
up-to-date branch. (#75) -
Many dependencies were updated to recent versions.
Docker
The image may be downloaded from DockerHub using:
docker pull vectorim/matrix-content-scanner:v1.3.0
PyPI
Install this release from PyPI using:
pip install matrix-content-scanner
v1.2.1
v1.2.0
v1.1.0
v1.0.8
v1.0.7
v1.0.6
v1.0.5
v1.0.4
v1.0.3
- Include CORS headers in responses
- Handle
OPTIONSrequests