Skip to content

Instantly share code, notes, and snippets.

View kennethnrk's full-sized avatar
👁️‍🗨️

Kenneth Rodrigues kennethnrk

👁️‍🗨️
View GitHub Profile

Typed Endpoint Migration Project

This project migrates Zulip's backend endpoints from using the has_request_variables decorator to use the typed_endpoint decorator. This new decorator leverages Pydantic v2 to provide type checking and data validation for the parameters passed to the various endpoints, thus making the process of creating new endpoints with complex data parameters easier. Migrating the existing endpoints makes it possible for all the endpoints to have a uniform way of performing data validation and enables them to use Pydantic's BaseModel and validators to provide additional validation for more complex data parameters.

My work

  • I started by migrating some of the more frequently used endpoints (endpoints in users.py and user_topics.py) during the community bonding period.

  • I migrated the most used endpoint message_fetch, which as th