Cara Salter (1):
commands: Add LIST command
Drew DeVault (1):
Improve noscript UI appearance
Rafael Castillo (1):
Add away command
Simon Ser (116):
components/buffer: add RPL_UMODEIS pretty-printing
components/buffer: pretty-print RPL_CHANNELMODEIS and RPL_CREATIONTIME
lib/client: handle MONITOR without value in ISUPPORT
Add more type checks for config.json
Inherit from default connectParams in handleConfig
Don't allow overriding server URL if set in config.json
Add autoconnect to config.json
Add nick to config.json
Allow revealing server field with ?server
Add support for SASL EXTERNAL
readme: mention server.ping when server doesn't send PINGs
Switch from anchorme to linkifyjs
Handle click on irc:// channel URLs inside buffers
Open dialog to create new network on IRC URL click
Handle IRC URLs without channel name
Use linkifyjs module
Use ISUPPORT NETWORK if user hasn't specified custom name
lib/irc: "unknown" is not a meaningful realname
Fallback to bouncer network host if name is unset
Close buffer tabs on middle click
Unescape ISUPPORT values
Allow bouncers to set NETWORK in ISUPPORT
Don't add RPL_SASLSUCCESS to server buffer
Don't add RPL_YOURHOST to server buffer
Pretty-print RPL_LOGGEDIN and RPL_LOGGEDOUT
Avoid using `export * as namespace`
Add minimal Parcel integration
gitignore: add Parcel files
lib/irc: extend parseURL to support flags and skip auth + options
lib/client: rename whoisDB to pendingWHOIS, garbage collect
lib/client: generalize pendingWHOIS, store list in ENDOF* messages
state: process RPL_NAMREPLY atomically
Add App.routeMessage
state: move in QUIT and NICK update logic
Upgrade http-server
Remove unnecessary irc.formatDate call
Add hint in server operators buffer header
Add RPL_WELCOME to server buffer
lib/client: fix missing account in WHOX
components/buffer-header: skip account name if it matches nick
components/buffer-header: mark unauthenticated users as such
lib/irc: add "fullname" to isMeaningfulRealname
Request more messages for event-playback infinite scrolling
components/buffer-header: add help text for user details
Route user MODE messages to server buffer
Route self-NICK messages to server buffer
lib/client: use Client.isMyNick to handle self-NICK messages
components/buffer: show MODE target if different from buffer name
Add Parcel to dev dependencies
Keep track of channel join status
De-duplicate nicks in folded JOIN/PART/QUIT lines
Disconnect previous server on connect re-submit
s/var/let/
Auto-join when adding new network on irc:// link click
Ask confirmation before JOIN on irc:// link click
Add "open" URL param
Don't auto-join without prompting user
Request WHO info w/ empty message list in switchBuffer
Always insert non-chathistory messages at the end
Add support for draft/extended-monitor
Don't stop fetching backlog on error
Only allow one WHO command at a time
Store WHO list in RPL_ENDOFWHO
lib/irc: fix handling for prefixes without host
Add UI to enable protocol handler
Reword ProtocolHandlerNagger message
Properly handle port in irc:// URLs
Auto-dismiss client error on reconnect
readme: add link to IRC channel
ci: add .build.yml
ci: add deploy task
ci: fix deploy branch check
ci: fix deploy branch check again, exclude config.json
Avoid inline script in index.html
lib/client: don't error out if SASL isn't available on RPL_WELCOME
state: add account to server
lib/client: remove one roundtrip during SASL auth
lib/client: don't disconnect on SASL error if registered
lib/client: always request sasl cap when available
lib/client: catch handleMessage errors
lib/client: send BOUNCER BIND and CAP END immediately
lib/client: make authenticate() return a promise
Add post-connect UI to login via SASL
Ignore RPL_AWAY
components/connect-form: replace auto-join text field with checkbox
readme: add nginx file server directive
Add embedded Content-Security-Policy
Dim away users in member list
components/member-list: re-render on State.users update
components/buffer-header: hide action buttons when disconnected
Clear channel joined field when disconnected
Linkify error messages
Add support for draft/account-registration
Add link to verify account next to VERIFICATION_REQUIRED message
Show "Manage network" even if upstream is disconnected
Mark register/verify dialogs as loading
Mark auth dialog as loading
Add custom developement server
Add usage message to development server
Disable debug logs in production
components/buffer-header: fix missing "join" button for parted channel
Update channel join status when kicked
lib/client: introduce IRCError
lib/client: add generic error handling to roundtrip()
Add Client.join, show join errors in popup
Read nickname from RPL_WELCOME
Handle FAIL ACCOUNT_REQUIRED
lib/client: use Error objects for error events
Refactor ISUPPORT handling
Implement exponential backoff for reconnections
Move isBouncer props to server state
state: fix server bouncerNetID
Add reconnect button
lib/irc: add CapRegistry
ci: fix deploy skip
state: fix prefix() call in MODE handler