From 93d81f0db3b6f5c6bc24ac2414150a350b4be72e Mon Sep 17 00:00:00 2001 From: David Robertson Date: Thu, 16 Jun 2022 12:58:13 +0100 Subject: [PATCH] Use caret (semver bounds) for matrix.org packages See https://python-poetry.org/docs/dependency-specification/#caret-requirements This effectively: - imposes new constraints `canonicaljson < 2` and `signedjson < 2` - widens `1.2.1 <= matrix-common < 1.3` to `1.2.1 <= matrix-common < 2` Doing so helps give us room to make backwards-compatible changes to our libraries without screwing over old synapse versions installed with the latest dependencies. --- poetry.lock | 2 +- pyproject.toml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/poetry.lock b/poetry.lock index 849e8a7a99e4..49fbaab57782 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1563,7 +1563,7 @@ url_preview = ["lxml"] [metadata] lock-version = "1.1" python-versions = "^3.7.1" -content-hash = "73882e279e0379482f2fc7414cb71addfd408ca48ad508ff8a02b0cb544762af" +content-hash = "e96625923122e29b6ea5964379828e321b6cede2b020fc32c6f86c09d86d1ae8" [metadata.files] attrs = [ diff --git a/pyproject.toml b/pyproject.toml index 44aa775c33b7..3a56c42c0b1f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -110,9 +110,9 @@ jsonschema = ">=3.0.0" frozendict = ">=1,!=2.1.2" # We require 2.1.0 or higher for type hints. Previous guard was >= 1.1.0 unpaddedbase64 = ">=2.1.0" -canonicaljson = ">=1.4.0" +canonicaljson = "^1.4.0" # we use the type definitions added in signedjson 1.1. -signedjson = ">=1.1.0" +signedjson = "^1.1.0" # validating SSL certs for IP addresses requires service_identity 18.1. service-identity = ">=18.1.0" # Twisted 18.9 introduces some logger improvements that the structured @@ -150,7 +150,7 @@ typing-extensions = ">=3.10.0.1" cryptography = ">=3.4.7" # ijson 3.1.4 fixes a bug with "." in property names ijson = ">=3.1.4" -matrix-common = "~=1.2.1" +matrix-common = "^1.2.1" # We need packaging.requirements.Requirement, added in 16.1. packaging = ">=16.1" # At the time of writing, we only use functions from the version `importlib.metadata`