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

Upgrade Python requirements #18400

Merged
merged 2 commits into from May 8, 2021
Merged

Conversation

andersk
Copy link
Member

@andersk andersk commented May 8, 2021

Upgraded:

  • arrow: 0.17.0 → 1.0.3
  • attrs: 20.3.0 → 21.2.0
  • babel: 2.9.0 → 2.9.1
  • black: 20.8b1 → 21.5b0
  • boto3: 1.17.53 → 1.17.69
  • botocore: 1.20.53 → 1.20.69
  • cachetools: 4.2.1 → 4.2.2
  • dataclasses-json: 0.5.2 → 0.5.3
  • django-formtools: 2.2 → 2.3
  • django-otp: 1.0.3 → 1.0.4
  • django[argon2]: 3.2 → 3.2.2
  • gitlint: 0.15.0 → 0.15.1
  • moto[s3]: 2.0.5 → 2.0.6
  • openapi-core: 0.13.7 → 0.13.8
  • pep517: (new) → 0.10.0
  • phonenumberslite: 8.12.21 → 8.12.22
  • pip: 20.2.4 → 20.3.4
  • pip-tools: 5.5.0 → 6.1.0
  • pygments: 2.8.1 → 2.9.0
  • pyre-check: 0.9.0 → 0.9.1
  • queuelib: 1.5.0 → 1.6.1
  • responses: 0.13.2 → 0.13.3
  • s3transfer: 0.3.7 → 0.4.2
  • semgrep: 0.47.0 → 0.50.1
  • sentry-sdk: 1.0.0 → 1.1.0
  • setuptools: 56.0.0 → 56.1.0
  • six: 1.15.0 → 1.16.0
  • tlds: 2021041302 → 2021050600
  • twilio: 6.56.0 → 6.58.0
  • typing-extensions: 3.7.4.3 → 3.10.0.0
  • xmlsec: 1.3.9 → 1.3.10
  • zulip: zulip/python-zulip-api@175972czulip/python-zulip-api@4d482e0
  • zulip-bots: zulip/python-zulip-api@175972czulip/python-zulip-api@4d482e0

I also decided to audit the requirements that are being held back:

This is enforced by Black ≥ 21.4b0.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
@timabbott
Copy link
Sponsor Member

lgtm. Thanks for doing that audit! I think for Tornado, we should figure out an upgrade plan soon; I don't think we need the specific logging feature we have, but we need some way to know whether a Tornado process is nearly overloaded.

And the other thing we should prioritize is removing PyAPNS2: it's clear that library is resulting in a tangle out outdated dependencies. That one is likely easier, in that we don't have a clear blocker for it and have never been happy with the library.

Is there an upstream issue for preserving our pip hack and/or some plan there?

@andersk
Copy link
Member Author

andersk commented May 8, 2021

I don't think we need the specific logging feature we have, but we need some way to know whether a Tornado process is nearly overloaded.

Is there some more end-to-end metric that might be more useful, like the amount of time spent waiting on a message to come in from RabbitMQ?

Is there an upstream issue for preserving our pip hack and/or some plan there?

There are a number of locked pip issues such as pypa/pip#2837, but the currently active one seems to be pypa/pip#5780, which I’ve added above.

I guess a partway upgrade to pip 20.3 with --use-deprecated=legacy-resolver is better than nothing, so I’ll do that.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
@timabbott
Copy link
Sponsor Member

Is there some more end-to-end metric that might be more useful, like the amount of time spent waiting on a message to come in from RabbitMQ?

The goal is to have a leading indicator of the form "we currently have 0 queuing, but if we added 20% more load, we'd have queuing". Essentially any amount of queueing is super bad. I think anything that lets us estimate that will work; amount of time spent asleep/waiting would certainly work (but we don't wait just for RabbitMQ, since we get HTTP requests too).

@timabbott timabbott merged commit 9ba48c4 into zulip:master May 8, 2021
@andersk andersk deleted the upgrade-requirements branch May 18, 2021 19:07
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