Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 31 million developers.Sign up
We've finally made it to v1.0.0! With this release, our list of need-to-haves is rounded out, and we reckon the software's ready for production use in smaller networks. slingamn and I have been working with our contributors and translators to prepare a cracker of a release. Thanks to @csmith our Docker builds have been updated, with automatic rebuilds as we develop the software. Thanks to @bogdomania our translation workflow has been improved a lot.
- Optional support for storing and replaying message history with the
draft/resume-0.3capability, the draft IRCv3
CHATHISTORYcommand, and a custom
- Better detection of confusing nick/account/channel names.
- User-customizable nickname protection methods.
- An account-only mode in which all clients must have an account and login to it (using SASL) before they can join the server.
Thanks to Mauropek, @modinfo, @bogdomania, @Shillos, Tony Chen, and Remini for adding new translations. Thanks to @Ascrod, @bogdomania, @csmith, @jesopo, @jwheare, @remini1998, @enckse, and @iNecas for finding bugs and/or writing new features.
allow-custom-enforcementkey added under
allow-plaintext-resumekey added under
identlenkey added under
login-throttlingsection added under
max-channels-per-accountkey added under
channels.registration(limiting the number of channels that can be registered).
max-channels-per-clientkey added under
channels(limiting the number of channels that can be joined).
methodkey now under
accountsnow allows the value
- Exemption lists now accept
localhostas a value, meaning any loopback IPV4, loopback IPV6, or unix domain address.
- Logging type
serverhas been added, replacing the
- The default logging configuration now logs to stderr only, rather than to both stderr and a file.
- We no longer listen on port
6668by default (this fixes Docker installs).
- Added a SASL-only mode in which all clients must authenticate with SASL.
- Added login throttling as a hardening measure against password guessing.
- Configurable limits are imposed on how many channels clients can join or register.
- Added automagic datastore creation on
- Added detection and prevention of confusing nicknames, account names, and channel names.
- Added limited message history for connection resuming (to be extended in future).
- Added new Español (es) translation (thanks to Mauropek!).
- Added new Polski (pl) translation (thanks to @modinfo!).
- Added new Română (ro) translation (thanks to @bogdomania!).
- Added new Ελληνικά (el) translation (thanks to @Shillos!).
- Added new 简体中文 (zh-CN) translation (thanks to Tony Chen and Remini!)).
- Added proposed IRCv3 capability
- Added subcommands to
PASSWDto change account passwords.
ENFORCEto set a specific enforcement mechanism on your nick.
SAREGISTERto allow operators to manually create new user accounts.
SASL PLAINlogins now log more correctly.
- Database upgrade failures now provide information about the error that occurred.
- Halfops can now kick unprivileged users.
- Idents (sometimes called "usernames") are now restricted to ASCII, similar to other servers.
- Improved compatibility with ZNC's nickserv module.
- In addition to the founder, now auto-ops (halfop and higher) automatically bypass channel join restrictions.
- Log lines now display time down to milliseconds, instead of just seconds.
- Updated all translation files (thanks to our amazing translators!).
- Updated proposed IRCv3 capability
- When nick ownership is enabled, users can now select which enforcement mechanism to use with their nickname.
INVITE: Fixed bug where invited users could not join the channel they were invited to (thanks to @unendingpattern!).
oragono.io/maxlinecapability was accidentally disabled, and is now re-enabled.
oragono genpasswdnow works when piping input in (fixes Docker installs).
PRIVMSG: Messages sent to multiple clients (such as channel messages) now share the same timestamp (previously each client got a very slightly different time).
WHOIS: Now responds properly for NickServ, ChanServ, etc.
- Channel names with right-to-left characters are now casefolded correctly (thanks to @remini1998!).
- Fixed handling of CIDR width in connection limiting/throttling.
- Fixed incorrect behavior of
- Fixed incorrect rejection of nickmasks with Unicode RTL nicknames.
- Fixed many responses that violated the specifications (thanks to @Ascrod, @bogdomania, @csmith, @jesopo, and @jwheare!).
- Fixed nickname sync issue which could cause clients to fail to see each other.
ISUPPORTtokens are now explicitly rejected.
server-timetimestamp format more consistent and safer.
- Oragono now exits with status (1) if it fails to start.
- Prevent logging in multiple times when using
- Prevented the db handler from automagically creating the database without initializing it (thanks @enckse!). We also now automatically create the datastore on
KLINErefactored, and expired bans are now removed from the database.
- Command-line parsing was upgraded to match modern best practices (thanks to @iNecas!).
- Direct responses to client commands are now sent "synchronously", bypassing the sendq.
- Logging system optimised.
- Services handlers refactored.
- Translations are now sent to/PR'd from CrowdIn automagically as we develop the software.