soju v0.8.0 This release contains the following new features: - Support for a new file-upload IRC extension, to allow clients to upload files to the bouncer. The extension is disabled by default and requires an HTTP listener to be set up. - Unix domain sockets are now supported for HTTP and WebSocket listeners. - Round-robien DNS resolution is used when per-user IP addresses are set up, to better spread load for larger bouncer deployments. - Highlights are now ignored when they appear inside a URL. Full commit history below. Alex McGrath (1): fileupload: add CORS header fields Egor (1): Add unix domain socket listeners for HTTP and WS Henrique Dias (1): Upgrade to go-sqlite3 to fix musl build Moritz Poldrack (2): Fix crash on start when file-upload is disabled doc: add documentation for the file-upload key Simon Ser (43): doc/man: add note that memory message store is basic Add .b4-config contrib/certbot: new document contrib/tlstunnel: new document database: move schema into separate file contrib/certbot: set -eu in renewal hook server: fix malformed Web Push subscriber URI downstream: use fresh context to send timeout errors Add conn.Shutdown upstream: consoldate TCP dial into function config: use scfg unmarshaler Add https:// and http+insecure:// listeners cmd/soju: add withDefaultPort helper config: fix MaxUserNetworks default value service: don't send PART if not joined in "channel delete" doc/per-user-ip: fix subnet length in ip route command Upgrade dependencies doc/ext/bouncer-networks: drop work-in-progress disclaimer Add support for file uploads Add http-ingress config directive doc/ext/filehost: fix heading level downstream: fix FILEHOST endpoint fileupload: serve select MIME types as inline doc: note that file uploads require an HTTP listener config: validate http-origin patterns Upgrade dependencies Wire up server logger to testing package Ignore highlights in URLs fileupload: append ext to filename if missing fileupload: hardcode a few primary file extensions fileupload: URL-escape output filename upstream: use round-robin DNS resolution when per-user IPs are set up Upgrade dependencies upstream: fix conditional for resolveIPAddr auth/pam: upgrade to github.com/msteinert/pam v2 server: print error on getOrCreateUser failure fileupload: fix http-origin pattern matching upstream: fix panic on malformed RPL_CHANNELMODEIS downstream: shallow copy message in SendMessage instead of deep copy downstream: ensure numerics always carry a source prefix Drop unnecessary prefixes for numerics Drop source prefix from most non-numeric server messages Remove RLIMIT_NOFILE bump Tomasz Hołubowicz (1): contrib/clients: update information on ERC for Emacs delthas (1): Automatically join a stored channel on INVITE dubious (1): Upstream change for senpai jacob1 (2): Fix missing prefix on away numerics Include prefix in CAP messages again