Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[5.x] Upgrade Tornado, other Python requirements; support Ubuntu 22.04 #22054

Merged
merged 16 commits into from
May 16, 2022

Conversation

andersk
Copy link
Member

@andersk andersk commented May 14, 2022

Backport to 5.x:

Differences in prod.txt:

  • asgiref: 3.5.0 → 3.5.1
  • backoff: 1.11.1 → 2.0.1
  • beautifulsoup4: 4.10.0 → 4.11.1
  • boto3: 1.21.26 → 1.22.5
  • botocore: 1.24.26 → 1.25.5
  • click: 8.0.4 → 8.1.3
  • cryptography: 36.0.2 → 37.0.1
  • disposable-email-domains: 0.0.78 → 0.0.79
  • django-cte: 1.1.5 → 1.2.0
  • django[argon2]: 3.2.12 → 3.2.13
  • google-re2: 0.2.20220201 → 0.2.20220401
  • ipython: 7.32.0 → 7.33.0
    (8.x in main dropped Python 3.7 support)
  • jinja2: 3.1.0 → 3.1.2
  • mypy-boto3-s3: 1.21.23.post1 → 1.22.0.post1
  • orjson: 3.6.7 → 3.6.8
  • phonenumberslite: 8.12.45 → 8.12.46
  • pika: 1.2.0 → 1.2.1
  • pillow: 9.0.1 → 9.1.0
  • prompt-toolkit: 3.0.28 → 3.0.29
  • pygments: 2.11.2 → 2.12.0
  • pymongo: 4.0.2 → 4.1.1
  • pyparsing: 3.0.7 → 3.0.8
  • redis: 4.2.0 → 4.2.2
  • regex: 2022.3.15 → 2022.4.24
  • sentry-sdk: 1.5.8 → 1.5.10
  • setuptools: 61.0.0 → 62.1.0
  • soupsieve: 2.3.1 → 2.3.2.post1
  • sqlalchemy: 1.4.32 → 1.4.36
  • stripe: 2.68.0 → 2.74.0
  • tlds: 2022032300 → 2022050100
  • tornado: 4.5.3 → 6.1 🚀🚀🚀🌙🌙
  • twilio: 7.8.0 → 7.8.2
  • typing-extensions: 4.1.1 → 4.2.0
  • werkzeug: 2.0.3 → 2.1.2
  • wrapt: 1.14.0 → 1.14.1
  • zipp: 3.7.0 → 3.8.0

andersk added 11 commits May 13, 2022 18:11
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 1c7954b)
We previously forked tornado.autoreload to work around a problem where
it would crash if you introduce a syntax error and not recover if you
fix it (tornadoweb/tornado#2398).

A much more maintainable workaround for that issue, at least in
current Tornado, is to use tornado.autoreload as the main module.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit bded718)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit e4bf706)
IOLoop.set_blocking_log_threshold and IOLoop.handle_callback_exception
are removed in Tornado 6.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 5d69daf)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 0ef9309)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 52b9c59)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit c9faefd)
According to the documentation: “Pika does not have any notion of
threading in the code. If you want to use Pika with threading, make
sure you have a Pika connection per thread, created in that thread. It
is not safe to share one Pika connection across threads, with one
exception: you may call the connection method add_callback_threadsafe
from another thread to schedule a callback within an active pika
connection.”

https://pika.readthedocs.io/en/stable/faq.html

This also means that synchronous Django code running in Tornado will
use its own synchronous SimpleQueueClient rather than sharing the
asynchronous TornadoQueueClient, which is unfortunate but necessary as
they’re about to be on different threads.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit c263bfd)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 6fd1a55)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit f23bfe9)
Fixes zulip#8913.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 7acb642)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit 25c87cc)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit e952641)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit a7cdcbb)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit f29553d)
Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit e6d8589)
@andersk andersk changed the title [5.x] requirements: Upgrade to Tornado 6, upgrade Python requirements [5.x] Upgrade Tornado, other Python requirements; support Ubuntu 22.04 May 14, 2022
@timabbott timabbott merged commit 318da92 into zulip:5.x May 16, 2022
@timabbott
Copy link
Sponsor Member

Merged, thanks @andersk!

@andersk andersk deleted the 5.x-requirements branch June 22, 2022 21:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants