Jordan Moldow
Jordan Moldow
By that I mean, if you run certain static analyzers on `boxsdk`, they might tell you that some modules are never used. For example, `import boxsdk` will run `from .object...
This class is the same as the former `DefaultNetwork` class, except that it accepts an optional `session` constructor parameter, for clients to specify a session of their choosing rather than...
Today, there are two options for downloading a file: - `File.content()`, which requests the entire file at once, and loads it all into memory. - `File.download_to()`, which requests the file...
Right now, our use of requests isn't invisible because we don't catch requests exceptions. This means that the user has to either catch requests exceptions too, or these could crash...
Similar to how we support arbitrary headers for all API calls.
There are some places where the name `oauth` is a public part of an interface (either as a keyword argument, or as a public property). It would be nice to...
When using RemoteOAuth2Mixin, all `/token` calls are delegated to another process or server. Thus: - The `client_id` and `client_secret` shouldn't be required. In fact, they perhaps shouldn't even be allowed...
`JWTAuth` is currently a subclass of `OAuth2`. For some of the low-level architecture this makes sense, but for other functionalities this doesn't make sense. `get_authorization_url`, `authenticate`, and `_get_state_csrf_token` have no...
We introduced the `network_interface` ABCs because we wanted to allow users to use any network layer that they pleased. We created the `DefaultNetwork`, backed by the `requests` library, so that...
#197 was able to occur because we didn't test that `JWTAuth.refresh()` followed the same rules as `OAuth2.refresh()`. There is an `OAuth2` test case for the scenario that triggered #197, but...