Breaking changes
* Client authentication is now generic. For HTTP Basic or Bearer authentication, construct a Client using `Client.create_with_password` or `Client.create_with_api_token`, respectively. Arbitrary authentication methods via `requests.auth.AuthBase` are supported by the `Client` constructor's `auth` argument.
* JMAP requests are now run using `Client.request` instead of `Client.method_call` or `Client.method_calls`, both of which have been removed. `Client.request` supports the previous multi-method use cases, with a new pair of classes `Invocation` and `InvocationResponse` instead of using tuples for multiple requests and responses. Multiple `Client.request` overloads with specific typing are provided.
* Result references should now use `Ref` instead of `ResultReference`. `ResultReference` remains but is now intended for internal use. `Ref` is simpler to use; in most cases you can simply use `Ref("/path")` to reference the `/path` value of the immediately preceding method.
What's Changed
* Add repository image by smkent in https://github.com/smkent/jmapc/pull/30
* Add pull_request to CI triggers by smkent in https://github.com/smkent/jmapc/pull/32
* Rework client authentication and add factory methods for basic, bearer auth by smkent in https://github.com/smkent/jmapc/pull/33
* Added Set Mailbox Functionality by bwilliams18 in https://github.com/smkent/jmapc/pull/31
* Add on_destroy_remove_emails to MailboxSet, unit tests by smkent in https://github.com/smkent/jmapc/pull/34
* Implement /changes methods for all models by smkent in https://github.com/smkent/jmapc/pull/35
* Implement /queryChanges methods for Mailbox and Email by smkent in https://github.com/smkent/jmapc/pull/36
* Implement Identity/set method by smkent in https://github.com/smkent/jmapc/pull/37
* Remove unnecessary using property from MailboxSetResponse by smkent in https://github.com/smkent/jmapc/pull/38
* Test Thread __len__ by smkent in https://github.com/smkent/jmapc/pull/40
* Implement support for EventSource events by smkent in https://github.com/smkent/jmapc/pull/39
* Add event source usage example by smkent in https://github.com/smkent/jmapc/pull/42
* Rework request interaction by smkent in https://github.com/smkent/jmapc/pull/41
* Add remaining fields to MailboxQueryFilterCondition by smkent in https://github.com/smkent/jmapc/pull/45
* Implement remaining EmailSubmission methods by smkent in https://github.com/smkent/jmapc/pull/46
* Implement Email/copy by smkent in https://github.com/smkent/jmapc/pull/47
* Rework JMAP method name configuration code by smkent in https://github.com/smkent/jmapc/pull/48
* Improve and streamline type hints by smkent in https://github.com/smkent/jmapc/pull/49
* Surface EventSource state events regardless of whether ID is present by smkent in https://github.com/smkent/jmapc/pull/50
New Contributors
* bwilliams18 made their first contribution in https://github.com/smkent/jmapc/pull/31
**Full Changelog**: https://github.com/smkent/jmapc/compare/v0.1.7...v0.2.0