Skip to content

Instantly share code, notes, and snippets.

@brijsiyag
Last active October 30, 2023 17:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save brijsiyag/1a0a0205e3bb1ee8a70d1e605d7042bd to your computer and use it in GitHub Desktop.
Save brijsiyag/1a0a0205e3bb1ee8a70d1e605d7042bd to your computer and use it in GitHub Desktop.

Google Summer of Code @Zulip work report

Introduction

This document is a summary of the work that I did as a student developer at the Zulip open source project, as part of Google Summer of Code 2023. During this year's Google Summer of Code, my primary focus at Zulip was the upload area. My tasks included working on the design aspects of Zulip, addressing different issues related to upload area, and adding new and innovative features.

Contributions

The majority of the GitHub pull requests listed below provide explanations of the modifications in their descriptions or commit messages. Additionally, you can discover mentions of the issues they resolve and conversations related to those modifications on https://chat.zulip.org.

Open pull requests

uploads: Chunk upload support using TusD service. #26004 Zulip Discussion

Description - This is the main pull request (PR) of my GSoC project. Initially, I created a draft pull request to implement the feature on our own. However, upon realizing the complexity and cost this would entail, we decided to utilize an open-source library. Among the options we considered, the one that stood out the most was "tusd" from Transloadit. Given that our frontend is already utilizing the Uppy library, which includes a plugin for tus upload, we concluded that moving forward with tusd was the best choice. After going through the documentation and conducting some research, we discovered that tusd lacked certain features that we would require for successful implementation. We initiated discussions with the maintainers of tusd and learned that they were in the process of incorporating all the necessary features in tusd v2, which were absent in v1. Despite this, we opted to make some patches in order to make it compatible with v1, resulting in the current state of the pull request. Now, with v2 of tusd nearly ready for release and the pull request still pending merge, we decided to migrate our code to tusd v2.

uploads: Uploads: Show modal to delete detached attachments after message edit. #25764 Zulip Discussion

Merged pull requets

uploads: Support drag and dropping files anywhere on message viewport. #26041

compose: Wildcard mention throwing error on send later. #25882

stream: change ID in selector to match updated one. #25601

compose: Check posting policy for direct messages. #25572

Pull requests that are opened before coding period but have worked on during coding period

previewable_url: Show titles of GitHub issues on hover. #22368

compose: Disable send button while uploads are in progress. #21166

Some of the PRs reviewed by me

message_feed: Improve edited/moved tooltip. #25883

stream_settings: Add not-subscribed tab to stream settings. #26049

upload_banner: Add a cancel button. #25848


My experience with Zulip

Contributing to Zulip through Google Summer of Code has been an incredible experience, marked a pivotal juncture in my learning and skill development journey, greatly enhancing my skill set and expertise. The most engaging part of the summer was reviewing pull requests of fellow and new contributors, which is an excellent way to acquire more knowledge in a shorter duration. The involvement of the community was really important, and I learned a lot from mentors. Getting feedback through code reviews was crucial, and the valuable insights I received during this process significantly contributed to my personal growth over time. I'm motivated to contribute more to Zulip and open-source projects. At last I'd like to thank Tim Abbott, Alex Vandiver, and Vaibhav Rabber for continious support during the program.

Post GSoC

Post the program, First and foremost, I will continue to work on pending tasks and take open pull requests to merged state. Later, as I stated in my proposal, I would love to take up the issue Create topic ids in the database #1191. I am delighted to grow with Zulip and be a part of its future growth.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment