Zum Inhalt

CHANGELOG

Unreleased

v0.12.0 (2026-09-09)

  • Serve FindConversation
  • Serve ApplyConversationAction
  • Serve GetConversationItems
  • Answer the search expression of a restriction
  • Answer a path as the member element it is
  • Decode the restriction of the search parameters of a search folder
  • Read the message new Outlook for Mac nests in a reply or forward
  • Wire the CopyFolder operation
  • Wire the EmptyFolder operation
  • Keep the presence of the completion percentage of a task
  • Collect the notice files next to the licenses
  • Collect the 3rd party licenses into the dist tarball
  • Keep the presence of ReturnNewItemIds in the models
  • Regenerate the EWS proto sources and stubs
  • Hold a throttle slot until its response is written
  • Read the boolean and bitmask restrictions of a search

v0.11.0 (2026-08-13)

  • Require a product license for EWS requests
  • Write the elements of a response in the order of the schema
  • Match the EWS endpoint path without regard to case
  • Decode SOAP requests in their declared encoding
  • Answer GetServerTimeZones as one merged response
  • Interpret zone-less datetimes in the TimeZoneContext zone
  • Throttle EWS requests per user like the Exchange ladder
  • Render fault detail values without a namespace prefix
  • Forward GetAttachment and DeleteAttachment to the backend
  • End streaming responses with a Closed part on graceful shutdown
  • Clarify the log for client-closed streaming connections
  • Convert the Contains search restriction to the backend
  • Forward UpdateInboxRules to the gRPC backend
  • Bridge GetInboxRules from EWS SOAP to gRPC
  • Bridge the user configuration writes from EWS SOAP to gRPC
  • Capture folder field elements before decoding them twice
  • Encode base64Binary bytes fields as base64 in the SOAP models
  • Bridge ResolveNames from EWS SOAP to gRPC
  • Generate arrays for bounded maxOccurs in the SOAP models
  • Map gRPC NotFound to ErrorItemNotFound
  • Stream GetStreamingEvents parts in unprefixed envelopes
  • Add ExpandDL operation
  • Extend item operation stub to six more operations
  • Parse and write xsd:date values as dates
  • Extend item operation stub to CreateItem
  • Add FindPeople, GetPersona and GetUserPhoto operations
  • Report a real maximum message size in mail tips
  • Convert PropertyId of extended field uri paths
  • Add build-time stub for item operations
  • Add CreateAttachment and SendItem operations
  • Fix zero datetime converted to non-nil timestamp

v0.10.3 (2026-06-11)

  • Ensure mandatory OOF settings are set to avoid Outlook crash

v0.10.2 (2026-03-02)

  • Avoid empty message text node for positive EWS response containers

v0.10.1 (2026-02-11)

  • Fix EWS ExtendedFieldURI field omission when empty
  • Preserve request order in EWS GetFolder and GetItem responses

v0.10.0 (2026-02-03)

  • Forward X-AnchorMailbox header to backend for mailbox routing
  • Implement UpdateFolder operation with ordered field updates
  • Increase error log traceback output buffer size
  • Fix XML unmarshaling for item change fields and add value types
  • Remove obsolete custom duration XML marshal
  • Fix EWS Duration vs XSD Duration mismatch

v0.9.2 (2025-12-11)

  • Do not encode t:Duration as string

v0.9.1 (2025-12-10)

  • Improve Duration serialization by using time duration as base value

v0.9.0 (2025-11-27)

  • Fix SOAP structure for group refs
  • Remove omitempty for int SOAP types
  • Implement dummy GetServiceConfiguration operation
  • Fix timezone handling for GetUserAvailability responses
  • Add context to from proto converters
  • Implement transition substitution group variants
  • Add GetServerTimeZonesFunc operation implementation

v0.8.0 (2025-10-30)

  • Bump CI to Go 1.25 and update Go linter

v0.7.2 (2025-10-20)

  • Always set external and internal oof message bodies

v0.7.1 (2025-09-11)

  • Fix XSDDate creation to use UTC timezone instead of nil

v0.7.0 (2025-08-07)

  • Implement response-level gzip compression for non-streaming requests
  • Implement field reordering system for EWS Go model generation
  • Add optional gzip compression disable via environment variable
  • Fix EWS Notifications XML namespace from types to messages
  • Add streaming support for EWS GetStreamingEvents

v0.6.1 (2025-07-28)

  • Add manual XML unmarshal for item change description

v0.6.0 (2025-07-17)

  • Detect and stop flood of paginated FindItem requests
  • Add basics for a per session request rate limiter

v0.5.0 (2025-07-04)

  • Fix SOAP parsing for substitution groups which have attributes
  • Implement SOAP decoding for restrictions
  • Add missing property name node to path substitution moder adaptors
  • Rebuild models with updated generator for attribute groups
  • Add compression support fo SOAP request/response handler
  • Avoid marshalling "zero" datetime into SOAP responses

v0.4.1 (2025-06-05)

  • Always include bool types in SOAP response payload

v0.4.0 (2025-06-04)

  • Use EWS specific datetime format without nanos
  • Add stream inbox changes example
  • Add error context to stream errors
  • Add GetEvents and GetStreamingEvents operation
  • Switch the ewsrpc innternal protocol to bidirectional streaming
  • Add GetServiceConfiguration opration implementation
  • Add GetFolder operation integration test
  • Add a bunch of more operations used by Outlook

v0.3.0 (2025-04-07)

  • Fix standard response headers for legacy MacOutlook
  • Fix ConvertId operation fastpath response namespace
  • Add custom unmarsh for Path substitution group
  • Avoid setting DescriptiveLinkKey for successful SOAP responses
  • Reply with status 200 to top level EWS GET request
  • Fix WSDL parser to generate arrays where needed for xsd choice elements

v0.2.2 (2025-03-27)

  • Allow SOAP request envelope header to be absent

v0.2.1 (2025-03-25)

  • Fix bin script copy/paste error

v0.2.0 (2025-03-24)

  • Cleanup operations implemetations and complete forwarding impl

v0.1.0 (2025-03-24)

  • Regenerate proto files with version information
  • Include project version number in generated proto files
  • Update EWS integration tests
  • Fix a bunch of SOAP namespaces for generated stubs
  • Regenerate conversions, no functional changes
  • Bridge more operations from EWS SOAP to gRPC
  • Port over existing dummy and noop operations
  • Add AddEntityFeedback via success fallback
  • Implement SetUserOofSettings operation
  • Add integration test using dotnet EWS SDK
  • Autogenerate conversion code
  • Fix request and response data types and add type bindings
  • Add support to generate XMLSchema-Instance response data
  • Properly return qualified datetime with timezone
  • Further fix xml input and output namespaces
  • Return SOAP Fault in request parsing error cases
  • Add Python test example using exchangelib
  • Add support to echo back cookies
  • Streamline error response code handling further
  • Add dev helper to valid response via xsd
  • Fix SOAP Fault and EWS Response Error responses
  • Fixup SOAP output
  • Add test example using .NET Exchange Managed API client
  • Fix SOAP output to be valid for the EWS schema
  • Pass along more headers as metadata to gRPC backend
  • More fixes for SOAP header names
  • Refactor request handling for auth and header parameters
  • Fix SOAP header field struct field names
  • Do not pin the Go toolchain
  • Add manual type converter helper example
  • Implement gRPC connector
  • Fix CI to use correct package named and clean up
  • Remove direct data access endpoint implementations
  • Put the various experimental converters behind conditional compile flags
  • Bump CI to use Go 1.23
  • Refactor ews handler func project structure
  • Update generators and generate protobuf models from Go models
  • Format wsdl and xsd files and add README for them
  • Update CI to Ubuntu 22.04
  • Add GetUserAvailabilityRequestFunc
  • Trim line break from string variables
  • Add SetUserOofSettingsRequest function
  • Add timestamp convert functions
  • Replace PT_STRING8 with PT_UNICODE for prop tag definitions
  • Impletment GetUserOofSettingsRequest function
  • Add standard xml namespace xsd and load it properly
  • Do not use gowsdl types in build output
  • Take ownership of gowsdl fork
  • Add support for SOAP request and response headers
  • Improve func names to be the match name as found in the wsdl
  • Implement GetSharingFolder endpoint
  • Implement GetUserOofSettingsRequestFunc response prototype
  • Update gowsdl to ensure date types are not wrongly mapped to strings
  • Use constants from models
  • Increase linter line length
  • Remove shame types, no longer required
  • Add GetPasswordExpirationDateTypeFunc
  • Generate SOAP stubs with go generate
  • Ensure to log XML encode errors
  • Update CI environment to work with private modules
  • Add missing types
  • Refactor SOAP handler to takje ownership of funcs
  • Ignore auto generated files while linting
  • Add SOAP service files
  • Improve linter output in CI
  • Add debugging instructions

v0.0.1 (2022-09-13)

  • Add CI
  • Bootstrap project
  • Initial commit