Skip to content

feat: Social rpc client #4615

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

Merged
merged 65 commits into from
May 5, 2023
Merged

feat: Social rpc client #4615

merged 65 commits into from
May 5, 2023

Conversation

jmoguilevsky
Copy link
Contributor

@jmoguilevsky jmoguilevsky commented Mar 13, 2023

What does this PR change?

This PR introduces the architecture for a new RPC client for the social service,
And it also introduces a feature flag (use-social-client) to prevent any unfinished from getting into production.

The solution also implied a few architectural changes in the project's codebase:

  • FriendsController is now an IService and is registered in the ServiceLocator
    • All references were updated accordingly
  • FriendsController is created receiving a ISocialApiBridge and receives a ProxySocialApiBridge that has the sole responsibility of knowing whether to call or not the RPC Client depending on the availability of the feature flag or not
  • FriendsController now has an InitializeAsync and assigns the corresponding Actions for the friendships initialization the old bridge or the social one, depending on the feature flag.
  • Only updated the friendsController that called the socialClient, like RequestFriendshipAsync and RejectFriendshipAsync as an example of how the client will be used in the future.

How to test the changes?

  1. Launch the explorer
  2. Open the friends tab, the friends request
  3. The current available friends and friend requests should still be there
  4. The whole flow of a friend request should still work seamlessly (Send, is received in real-time, also canceling, and rejecting should work as expected)
  5. When accepting or deleting a friend, the friend should be removed from the list of friends

Our Code Review Standards

https://github.com/decentraland/unity-renderer/blob/master/docs/code-review-standards.md

@github-actions
Copy link
Contributor

@jmoguilevsky jmoguilevsky force-pushed the feat/new-social-rpc-client branch from f6350d3 to 502d692 Compare April 10, 2023 14:09
@jmoguilevsky jmoguilevsky force-pushed the feat/new-social-rpc-client branch from 502d692 to d324399 Compare April 19, 2023 15:45
@jmoguilevsky jmoguilevsky marked this pull request as ready for review May 1, 2023 21:47
@jmoguilevsky jmoguilevsky requested a review from a team May 1, 2023 21:47
@github-actions github-actions bot requested a review from AjimenezDCL May 1, 2023 21:47
@jmoguilevsky jmoguilevsky dismissed mikhail-dcl’s stale review May 2, 2023 12:21

Stale review, already have approval of another TL

Copy link

@kwssbocian kwssbocian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✔️Friends list and current friend requests are available in their appropriate menus.
✔️All friend-related flows work correctly. Accepting and rejecting requests deletes the entry from the requests list and unfriending someone deletes them from the friends list.

@jmoguilevsky jmoguilevsky merged commit b9310d1 into dev May 5, 2023
@jmoguilevsky jmoguilevsky deleted the feat/new-social-rpc-client branch May 5, 2023 00:14
@AjimenezDCL AjimenezDCL restored the feat/new-social-rpc-client branch May 5, 2023 08:38
@AjimenezDCL AjimenezDCL deleted the feat/new-social-rpc-client branch May 5, 2023 08:40
@AjimenezDCL
Copy link
Contributor

This was reverted because it was squashed, it was duplicated and merged into dev properly here: #5125

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

Successfully merging this pull request may close these issues.

5 participants