Exchange Web Services client library v1.11.0 Release Notes

    • Added cancel to CalendarItem and CancelCalendarItem class to allow cancelling meetings that were set up
    • Added accept, decline and tentatively_accept to CalendarItem as wrapper methods
    • Added accept, decline and tentatively_accept to MeetingRequest to respond to incoming invitations
    • Added BaseMeetingItem (inheriting from Item) being used as base for MeetingCancellation, MeetingMessage, MeetingRequest and MeetingResponse
    • Added AssociatedCalendarItemId (property), AssociatedCalendarItemIdField and ReferenceItemIdField
    • Added PostReplyItem
    • Removed Folder.get_folder_by_name() which has been deprecated since version 1.10.2.
    • Added Item.copy(to_folder=some_folder) method which copies an item to the given folder and returns the ID of the new item.
    • We now respect the back off value of an ErrorServerBusy server error.
    • ๐Ÿ‘ Added support for fetching free/busy availability information ofr a list of accounts.
    • Added Message.reply(), Message.reply_all(), and Message.forward() methods.
    • The full search API now works on single folders and collections of folders, e.g. some_folder.glob('foo*').filter(), some_folder.children.filter() and some_folder.walk().filter().
    • ๐Ÿ—„ Deprecated EWSService.CHUNKSIZE in favor of a per-request chunk_size available on Account.bulk_foo() methods.
    • ๐Ÿ‘ Support searching the GAL and other contact folders using some_contact_folder.people().
    • ๐Ÿ—„ Deprecated the page_size argument for QuerySet.iterator() because it was inconsistent with other API methods. You can still set the page size of a queryset like this:

      qs = a.inbox.filter(...).iterator()
      qs.page_size = 123
      for item in items:
          print(item)