Skip to content

Support ESEARCH response (RFC 4731) #474

Description

@scanner

Summary

Implement RFC 4731 ESEARCH extension, providing compact search result representations with MIN, MAX, COUNT, and ALL result options.

Motivation

ESEARCH returns search results more efficiently than the traditional SEARCH response, especially for large result sets. Modern clients (including iOS Mail) benefit from compact UID ranges instead of listing every UID individually.

Scope

  • Advertise ESEARCH in CAPABILITY response
  • Support SEARCH RETURN (MIN MAX COUNT ALL) syntax
  • Return * ESEARCH (TAG "...") UID MIN x MAX y COUNT z ALL <uid-range> response format
  • Support all four result options individually and in combination
  • Fall back to standard SEARCH response when no RETURN options specified

References

  • RFC 4731
  • Useful for: QRESYNC (uses ESEARCH-style responses)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions