Skip to content

Commit 50bf73b

Browse files
committed
📚 Document CAPABILITY command, using capabilities
Basic IMAP4rev1 capabilities, and using IMAP4rev1 extensions.
1 parent 908e2a4 commit 50bf73b

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

lib/net/imap.rb

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -444,6 +444,28 @@ def disconnected?
444444
# Capability requirements—other than +IMAP4rev1+—are listed in the
445445
# documentation for each command method.
446446
#
447+
# ===== Basic IMAP4rev1 capabilities
448+
#
449+
# All IMAP4rev1 servers must include +IMAP4rev1+ in their capabilities list.
450+
# All IMAP4rev1 servers must _implement_ the +STARTTLS+,
451+
# <tt>AUTH=PLAIN</tt>, and +LOGINDISABLED+ capabilities, and clients must
452+
# respect their presence or absence. See the capabilites requirements on
453+
# #starttls, #login, and #authenticate.
454+
#
455+
# ===== Using IMAP4rev1 extensions
456+
#
457+
# IMAP4rev1 servers must not activate incompatible behavior until an
458+
# explicit client action invokes a capability, e.g. sending a command or
459+
# command argument specific to that capability. Extensions to backward
460+
# compatible features, such as response codes or mailbox attributes, might
461+
# be sent at any time.
462+
#
463+
# Invoking capabilities which are unknown to Net::IMAP may cause unexpected
464+
# behavior and errors, for example ResponseParseError ill be raised when
465+
# backwards-incompatible response syntax is received. Invoking commands or
466+
# command parameters that are unsupported by the server may raise
467+
# NoResponseError, BadResponseError, or cause other unexpected behavior.
468+
#
447469
# ===== Caching +CAPABILITY+ responses
448470
#
449471
# Servers may send their capability list, unsolicited, using the

0 commit comments

Comments
 (0)