gh-153521: Support structured arguments in imaplib commands (GH-153522)
Command methods now accept a structured *message_set* (an integer, or a
sequence of integers, (start, stop) ranges and range objects) and lists of
flags or other atoms in place of preformatted parenthesized strings.
The search, fetch, sort, thread and uid methods gain a keyword-only *params*
argument that substitutes and quotes '?' placeholders in their value-bearing
arguments, in the manner of sqlite3 parameter substitution.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: R. David Murray <rdmurray@bitdance.com>