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

Deprecate and remove legacy unread endpoints #23598

Open
timabbott opened this issue Nov 17, 2022 · 22 comments
Open

Deprecate and remove legacy unread endpoints #23598

timabbott opened this issue Nov 17, 2022 · 22 comments

Comments

@timabbott
Copy link
Sponsor Member

The API endpoints documented here: https://zulip.com/api/mark-all-as-read are effectively special cases of the /api/v1/messages/flags/narrow API endpoint; we should plan to replace client use of them with the more general endpoint, sharing code web app code from #23579.

The first step for this will be starting a thread in #api design on chat.zulip.org for what our deprecation options are; if the mobile and terminal clients are not using those endpoints, then we can remove them after migrating the web app usage; whereas otherwise we'll need a longer deprecation period.

@zulipbot
Copy link
Member

Hello @zulip/server-api members, this issue was labeled with the "area: api" label, so you may want to check it out!

@quinnah
Copy link
Collaborator

quinnah commented Nov 18, 2022

@zulipbot claim

@zulipbot
Copy link
Member

Welcome to Zulip, @quinnah! We just sent you an invite to collaborate on this repository at https://github.com/zulip/zulip/invitations. Please accept this invite in order to claim this issue and begin a fun, rewarding experience contributing to Zulip!

Here's some tips to get you off to a good start:

As you work on this issue, you'll also want to refer to the Zulip code contribution guide, as well as the rest of the developer documentation on that site.

See you on the other side (that is, the pull request side)!

@zulipbot
Copy link
Member

zulipbot commented Nov 28, 2022

@jcchou12 You have been unassigned from this issue because you have not made any updates for over 14 days. Please feel free to reclaim the issue if you decide to pick up again. Thanks!

@quinnah
Copy link
Collaborator

quinnah commented Nov 28, 2022

@zulipbot abandon

@jcchou12
Copy link
Collaborator

@zulipbot claim

@zulipbot
Copy link
Member

Welcome to Zulip, @jcchou12! We just sent you an invite to collaborate on this repository at https://github.com/zulip/zulip/invitations. Please accept this invite in order to claim this issue and begin a fun, rewarding experience contributing to Zulip!

Here's some tips to get you off to a good start:

As you work on this issue, you'll also want to refer to the Zulip code contribution guide, as well as the rest of the developer documentation on that site.

See you on the other side (that is, the pull request side)!

@jcchou12
Copy link
Collaborator

jcchou12 commented Dec 5, 2022

@zulipbot claim

@jcchou12
Copy link
Collaborator

@zulipbot abandon

@Omar-ahmed314
Copy link
Collaborator

@zulipbot claim

@zulipbot
Copy link
Member

Welcome to Zulip, @Omar-ahmed314! We just sent you an invite to collaborate on this repository at https://github.com/zulip/zulip/invitations. Please accept this invite in order to claim this issue and begin a fun, rewarding experience contributing to Zulip!

Here's some tips to get you off to a good start:

As you work on this issue, you'll also want to refer to the Zulip code contribution guide, as well as the rest of the developer documentation on that site.

See you on the other side (that is, the pull request side)!

@zulipbot
Copy link
Member

zulipbot commented Mar 30, 2023

@Omar-ahmed314 You have been unassigned from this issue because you have not made any updates for over 14 days. Please feel free to reclaim the issue if you decide to pick up again. Thanks!

@Omar-ahmed314
Copy link
Collaborator

@zulipbot abandon

@chrisbobbe
Copy link
Contributor

Unfortunately, current zulip-mobile (v27.211) has buttons exercising all three of the endpoints currently documented at https://zulip.com/api/mark-all-as-read:

  • /api/v1/mark_all_as_read
  • /api/v1/mark_stream_as_read
  • /api/v1/mark_topic_as_read

@laurynmm
Copy link
Collaborator

@marco-zan
Copy link
Collaborator

Hi there! I'm looking forward to complete this issue as my first issue in the project.

As far as i can tell, #23579 actually resolved the issue for the frontend code by deleting the use of the old endpoint. Am I correct?

The first thing I'd do is see if the terminal client is using those APIs and, if so, undertake the work to change them, hopefully proceeding to mobile as a second step.

Please let me know if you have any suggestions or if I'm doing something incorrectly; I'm always seeking to improve myself.

@marco-zan
Copy link
Collaborator

@zulipbot claim

@zulipbot
Copy link
Member

Welcome to Zulip, @marco-zan! We just sent you an invite to collaborate on this repository at https://github.com/zulip/zulip/invitations. Please accept this invite in order to claim this issue and begin a fun, rewarding experience contributing to Zulip!

Here's some tips to get you off to a good start:

As you work on this issue, you'll also want to refer to the Zulip code contribution guide, as well as the rest of the developer documentation on that site.

See you on the other side (that is, the pull request side)!

@laurynmm
Copy link
Collaborator

@marco-zan - Thanks for your interest in working on this issue!

If you check out the conversation that was linked above in chat.zulip.org (linked here again), you'll see there's been further discussion on how best to proceed with this issue. As you noted the mobile React Native app and terminal app both use these endpoints. And the web-app does indeed still use some of the bulk mark as read endpoints (stream and topic); see #27372.

If you're interested in working on the frontend updates for the web-app, then looking into the work on #27372 would make sense. Noting here from our contributing guide that before you claim an issue, you should be confident that you know how to address it.

The plan for mobile is to use the new endpoint in the Flutter app implementation of mark as read, which is being worked on by the core team. If you're interested in working on the terminal app's use of these endpoints, then I would start a discussion in the #zulip-terminal stream.

For now, I'm going to unassign you from this issue and remove the "help wanted" label from this issue as it's currently pending work noted above.

@marco-zan
Copy link
Collaborator

Sorry to have claimed without knowing how to proceed. I have missed it reading the docs.

I have read the topic on the chat, i will answer there

@timabbott
Copy link
Sponsor Member Author

The next step for this project is for the mobile and terminal apps to be audited for whether they are using these endpoints, and if not, do something like #27372.

I don't see issues linked, so it might be that we should open issues for each project similar to #27372.

@timabbott
Copy link
Sponsor Member Author

timabbott commented Jan 16, 2024

Marking this as blocked on the mobile apps migrating off of using the affected endpoints; see CZO thread for details. Probably this won't happen until the Flutter app transition later this year.

We also need to update the Python bindings to not recommend the removed endpoints: zulip/python-zulip-api#820

Once that's done, removing this should be easy.

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

No branches or pull requests

8 participants