zulip/zerver
Anders Kaseorg 9198fe4fac scim: Downgrade SCIMClient from a model to an ephemeral dataclass.
SCIMClient is a type-unsafe workaround for django-scim2’s conflation
of SCIM users with Django users.  Given that a SCIMClient is not a
UserProfile, it might as well not be a model at all, since it’s only
used to satisfy django-scim2’s request.user.is_authenticated queries.

This doesn’t solve the type safety issue with assigning a SCIMClient
to request.user, nor the performance issue with running the SCIM
middleware on non-SCIM requests.  But it reduces the risk of potential
consequences worse than crashing, since there’s no longer a
request.user.id for Django to confuse with the ID of an actual
UserProfile.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-09-26 11:36:48 -07:00
..
actions user-status: Stop updating the UserStatus model for away updates. 2022-09-23 12:27:54 -07:00
data_import slack: Filter out non-.json files for processing. 2022-09-23 09:59:34 -07:00
integration_fixtures/nagios tests: Add a test for fixtures for non-webhook integrations. 2021-04-28 08:16:51 -07:00
lib scim: Downgrade SCIMClient from a model to an ephemeral dataclass. 2022-09-26 11:36:48 -07:00
management scim: Downgrade SCIMClient from a model to an ephemeral dataclass. 2022-09-26 11:36:48 -07:00
migrations scim: Downgrade SCIMClient from a model to an ephemeral dataclass. 2022-09-26 11:36:48 -07:00
openapi api-docs: Document away as deprecated way to access presence_enabled. 2022-09-23 12:27:54 -07:00
tests scim: Downgrade SCIMClient from a model to an ephemeral dataclass. 2022-09-26 11:36:48 -07:00
tornado tornado: Raise the same error for nonexistent and unauthorized queues. 2022-09-20 15:20:36 -07:00
views user-status: Move do_update_user_status to separate actions file. 2022-09-23 12:27:54 -07:00
webhooks integrations: Add incoming webhook macro to relevant docs. 2022-09-09 16:31:33 -07:00
worker message_flags: Fix deadlocks when updating message flags. 2022-09-06 16:06:58 -07:00
__init__.py django: Upgrade Zulip to Django 3.2 LTS. 2021-05-03 08:36:22 -07:00
apps.py caching: Make sender type optional for flush_cache. 2021-07-26 14:48:07 -07:00
context_processors.py templates: Rename OPEN_GRAPH variables to PAGE or PAGE_METADATA. 2022-09-06 14:57:06 -07:00
decorator.py decorator: Rename profile to user_profile. 2022-08-17 12:05:38 -07:00
filters.py typing: Fix function signatures. 2021-08-20 05:54:19 -07:00
forms.py forms: Fix another 500 error on realm creation with invalid email. 2022-09-19 14:12:32 -07:00
logging_handlers.py python: Use Python 3.8 typing.{Protocol,TypedDict}. 2022-04-27 12:57:49 -07:00
middleware.py scim: Downgrade SCIMClient from a model to an ephemeral dataclass. 2022-09-26 11:36:48 -07:00
models.py scim: Downgrade SCIMClient from a model to an ephemeral dataclass. 2022-09-26 11:36:48 -07:00
signals.py requirements: Upgrade to Django 4.0. 2022-07-13 16:07:17 -07:00