From 993ce94431cddfdbbf0e4ec6b62aa441348f7e71 Mon Sep 17 00:00:00 2001 From: Suyash Vardhan Mathur Date: Thu, 11 Mar 2021 18:49:45 +0530 Subject: [PATCH] api: Add sorting for API responses. Currently the API response keys were sorted in random order, making the responses unreadable. Added JSON dumps to sort the response keys. --- test_function.py | 10 ++++++++++ zulip/zulip/__init__.py | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 test_function.py diff --git a/test_function.py b/test_function.py new file mode 100644 index 000000000..d26bf25aa --- /dev/null +++ b/test_function.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python3 + +import zulip + +# Pass the path to your zuliprc file here. +client = zulip.Client(config_file="~/zuliprc") + +# Get all streams that the user is subscribed to +result = client.list_subscriptions() +print(result) diff --git a/zulip/zulip/__init__.py b/zulip/zulip/__init__.py index d5130dbb7..a477696b9 100644 --- a/zulip/zulip/__init__.py +++ b/zulip/zulip/__init__.py @@ -609,8 +609,8 @@ def call_endpoint(self, url: Optional[str] = None, method: str = "POST", request if v is not None: marshalled_request[k] = v versioned_url = API_VERSTRING + (url if url is not None else "") - return self.do_api_query(marshalled_request, versioned_url, method=method, - longpolling=longpolling, files=files, timeout=timeout) + return json.dumps(self.do_api_query(marshalled_request, versioned_url, method=method, + longpolling=longpolling, files=files, timeout=timeout), sort_keys=True) def call_on_each_event( self,