Delayed Joins

Delayed joins (channel mode +D) allows channel operators to essentially squelch join/part floods.

How delayed joins work
When a user joins a channel that has delayed joins enabled (+D), they're considered to be "observing" and a join notification is *not* sent to the other users presently in the channel, not even channel operators. Once the user sends a message that would otherwise be sent to the channel, changes the channel topic, or a mode change occurs on them (e.g. they're voiced or op'd), they are then "revealed" to the channel and a join notification is sent to your client.

How do I enable delayed joins?
Assuming that you are op'd in the channel, enabling delayed joins is achieved by setting channel mode +D.

For example:

Disabling delayed joins (e.g. setting the channel -D), while there are still delayed-joined (hidden) users in the channel, will cause the server to automatically set +d in its place; +d is covered below.

What is +d and why can't I remove it?
The channel mode +d is what the server automatically sets when +D is removed from a channel that still has delayed-joined (hidden) users present. When all delayed-joined users have been revealed (e.g. send a message to the channel), part, quit or are voiced/halfop'd/op'd, the server will automatically remove +d. You cannot remove or set +d on your own, but you can voice those users who were hidden by +D to reveal them.

How do I view delayed-joined (hidden) users in my channel?
You can view what users are currently delayed-joined (hidden) in a channel by using the /names command with the -D argument. For example: