Open
Description
As part of zulip/zulip#18035
We should implement this as follows:
- A commit should make a
Client
object do aGET /server_settings
and store thefeature_level
and server version as properties. - We can then write functions to encode parameters differently depending on the feature level. for
update_user
as a sample case, in preparation for the API migration there. - We can figure out a test suite strategy to ensure that these actually work across versions. E.g. maybe we have CI to run the zulip/zulip
tools/test-api
tests for 2.1, 3.0, 4.0, and master against the Python bindings. - Once we've figured out the infrastructure for this, we can make a master issue to make everything in our API changelog be supported across versions by this project.
@ligmitz FYI.