This page contains news about the Ergo IRC server, the Ergo IRC network, new releases, and plans for the future.
We also have an RSS feed here, which you can use to keep updated: feed.xml
30 Jun 2024 - Link
We’re pleased to announce Ergo v2.14.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.14.0
06 May 2024 - Link
Ergo 2.13.1 is a new bugfix release, fixing a denial-of-service issue. We regret the oversight. We recommend that all deployments upgrade as soon as possible.
https://github.com/ergochat/ergo/releases/tag/v2.13.1
14 Jan 2024 - Link
We’re pleased to announce Ergo v2.13.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.13.0
11 Oct 2023 - Link
We’re pleased to announce Ergo v2.12.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.12.0
22 Jan 2023 - Link
Ergo 2.11.1 is a new bugfix release, fixing a denial-of-service issue in our websocket implementation. We regret the oversight. All deployments using websockets should upgrade.
https://github.com/ergochat/ergo/releases/tag/v2.11.1
25 Dec 2022 - Link
We’re pleased to announce Ergo v2.11.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.11.0
29 May 2022 - Link
We’re pleased to announce Ergo v2.10.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.10.0
19 Jan 2022 - Link
We’re pleased to announce the first tagged release of irc-go, our IRC library and bot framework. While we’re not ready to commit to full API stability, we envision this as a significant milestone towards that goal. Any API breaks from this point will be clearly documented.
For the changelog, see our GitHub page:
https://github.com/ergochat/irc-go/releases/tag/v0.1.0
You can install the release in your Go project using go get github.com/ergochat/irc-go
. The expected go.sum
lines are:
github.com/ergochat/irc-go v0.1.0 h1:jBHUayERH9SiPOWe4ePDWRztBjIQsU/jwLbbGUuiOWM=
github.com/ergochat/irc-go v0.1.0/go.mod h1:2vi7KNpIPWnReB5hmLpl92eMywQvuIeIIGdt/FQCph0=
10 Jan 2022 - Link
Ergo v2.9.1 is a bugfix release, fixing a regression introduced in v2.9.0. We regret the oversight.
For the official binary release and changelog, see our GitHub page:
https://github.com/ergochat/ergo/releases/tag/v2.9.1
09 Jan 2022 - Link
We’re pleased to announce Ergo v2.9.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.9.0
15 Dec 2021 - Link
Ergo is the only major IRC server implementation to natively offer “multiclient” functionality, where multiple client connections can share the same nickname and presence on the server. A potentially surprising use of this feature is that it can be used to “stack” bots: two separate IRC bot implementations, neither of which is aware of the other, can be combined into one as though they were a single modular bot. For example, right now on the official irc.ergo.chat network, the ErgoBot
nickname is actually controlled by two separate bots: one slingamn/titlebot, which titles links, and one slingamn/ghbot, which announces events from GitHub.
This has advantages relative to a conventional modular bot framework:
but also disadvantages:
PRIVMSG
and only emit NOTICE
.)If you have multiple bots and it seems like they won’t conflict, try consolidating them! As usual with Ergo, you just need to configure them to use the exact same nickname, SASL account name, and SASL password. (If a bot doesn’t support SASL, in a typical Ergo configuration you can authenticate it using PASS
(server password) instead. For example, if the SASL account name is pybot
and the SASL password is hunter2
, you send pybot:hunter2
as the server password.)
14 Nov 2021 - Link
We’re pleased to announce Ergo v2.8.0, a new stable release. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.8.0
As part of this release, our official Docker images have moved from Docker Hub to the GitHub Container Registry, at ghcr.io/ergochat/ergo
. The stable
and master
tags correspond to the respective branches. Tagged releases (e.g. v2.8.0
) are available under the corresponding named tags.
08 Jun 2021 - Link
We’re pleased to announce Ergo v2.7.0, the first stable release under our new name. For the official binary release and changelog, see our GitHub:
https://github.com/ergochat/ergo/releases/tag/v2.7.0
We’re still working on fully transitioning our website to its new address at ergo.chat, but you can expect a final news post here with details when it happens.
02 Jun 2021 - Link
We are in the process of renaming the Oragono project to Ergo. We should have more information on this transition in the next week or so, including an official release under the new name. (We expect the migration process to be easy and nondisruptive.)
Thanks for using Oragono, and see you on the other side! This website will move to its new home at https://ergo.chat, but you can expect a final news post here with details.
26 Apr 2021 - Link
Oragono 2.6.1 is a bugfix release that fixes a security issue, introduced in 2.4.0. This issue may be critical for some private server configurations (i.e., Internet-facing servers that are not open to the public). We apologize for the oversight.
For the official binary releases and more details, including effective mitigations, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.6.1
18 Apr 2021 - Link
We’re pleased to announce v2.6.0, a new stable release. Highlights include:
+B
in our implementation)For the official binary releases and more details, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.6.0
02 Feb 2021 - Link
Oragono 2.5.1 is a bugfix release that fixes a significant security issue (introduced in 2.5.0). We apologize for the oversight.
For the official binary releases and more details, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.5.1
31 Jan 2021 - Link
We’re pleased to announce v2.5.0, a new stable release. Highlights include:
UBAN
, a new “unified ban” system for server operators, with a corresponding CHANSERV HOWTOBAN
command for channel operators+f
For the official binary releases and a more complete changelog, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.5.0
08 Nov 2020 - Link
We’re pleased to announce v2.4.0, a new stable release focused on feature parity with other ircds. Highlights include:
For the official binary releases and a more complete changelog, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.4.0
06 Sep 2020 - Link
We’re pleased to announce v2.3.0, a new stable release with some significant bug fixes.
For the official binary releases and a more complete changelog, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.3.0
26 Jul 2020 - Link
We’re pleased to announce v2.2.0, a new stable release with many improvements and fixes. Highlights include:
For the official binary releases and a more complete changelog, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.2.0
01 Jun 2020 - Link
We’re pleased to announce v2.1.0, a new stable release building on feedback from real-world operators and end users. Highlights include:
For the official binary releases and a more complete changelog, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.1.0
08 Mar 2020 - Link
We’re pleased to announce v2.0.0, a major update to Oragono. Highlights include:
For the official binary releases and a more complete changelog, see our GitHub page:
https://github.com/oragono/oragono/releases/tag/v2.0.0
17 Nov 2019 - Link
We’re pleased to announce v1.2.0, a bugfix release. You can read more about it and download it here:
https://github.com/oragono/oragono/releases/tag/v1.2.0
23 Feb 2019 - Link
We’ve finally made it to v1.0.0, something I wasn’t sure we’d ever do! slingamn and I have been working hard with our contributors and translators to prepare a cracker of a release. Thanks particularly to @bogdomania for pushing us to improve our translation workflow. With v1.0.0, most of the vital features for running a network successfully are now a part of the server.
You can grab the release [here].
In particular:
There are a ton of other cool changes, all of which we’ve listed in the changelog. Special thanks to the translators who’ve put their time into this project, all of which we’ve listed and are also listed in the /INFO
command output.
So what are our future plans? Well, the next release should include:
message-tags
capability.There’s a host of other features that we’re wanting to get to as time allows, but we’ll see what gets ready for the next release. In the meantime, we hope that you enjoy v1.0.0, and feel free to contact us with any feature requests you have or post them to our issue board!
01 Apr 2018 - Link
Hey there, stranger! Long time no see.
So it’s been about four months since any proper releases, and a good half a year since any posts. We haven’t been dead and there’s been a bunch happening in the background, which I’m gonna quickly go through.
Right now we’re working on v0.11.0
, probably the biggest release since the initial one, v0.1.0
. We’ve already had an alpha for it, and we’re almost certainly gonna have a beta before it gets pushed out proper, because there’s a lot of significant, wide-ranging changes. Here are the most important ones:
Translations
Oragono now supports other languages! That is, the server-sent messages (such as “are supported by this server” and “Account created”) can be in other languages, but regular privmsgs/notices sent by other users are left alone. Currently, we’ve got a Brazilian Portuguese translation thanks to Alexandre Oliveira, a French translation thanks to Joshua, and a Turkish translation thanks to Yaser!
This functionality’s provided by the LANGUAGE
command proposed by Sadie. If you’re interested, you can find the spec I’ve been working off and updating here.
To do the actual translations we’ve been using CrowdIn, an absolutely awesome service that provides free resources for open source projects. If you know another language and you’d like to give it a shot, here’s our CrowdIn page:
https://crowdin.com/project/oragono
NickServ / Accounts
You can now use NickServ to register and login to your account! In addition, as a server owner you can force email verification for new accounts. You can also enforce nickname ownership, allowing your users to force it so that only they can use their nick on your server.
All in all, lots of cool changes in NickServ.
Fakelag
Similar to other servers, we now support a feature called ‘fakelag’. Essentially, if someone pastes the collected works of William Shakespere, it’ll restrict them before it starts negatively affecting the server. Thanks to some other backend socket rewrites, it’ll also kick them off the network if they send too much data in one line, matching how other servers do things there.
Fakelag is disabled by default while we work out the kinks, but we should have a beta with it out soon. Feel free to yell or submit issues if there’s any trouble with it!
New Spec Support
We now properly support IRCv3 Labeled Responses. This was a bit of a nightmare to implement, and required rewriting a lot of lines of code, but very worth it. The code’s much cleaner now thanks to this!
Along with the above language proposal, we also support the resume extension (submitted by myself). The resume
extension aims to simplify reconnection for users, removing the need to go through the /NS GHOST process after disconnecting and reconnecting.
Backend Rewrites and Improvements
There’s a lot of changes and improvements in the backend: the labeled-responses rewrite forced us to handle command replies in a more sane way; we now format message IDs in a better way; we now support exposing a debug pprof endpoint; and we can now expose a unix listening socket.
Overall, lots of positive changes. Should be more stable, more useful to the IRCv3 WG, and more useful to our regular server owners / users in general.
What’s Next?
Well, next is doing some additional testing on the new features and getting a beta of v0.11.0
out. After that beta’s been tossed around a bit and I’m pretty happy to release a new version… it’s time to cut a new release!
Thanks for sticking with me through these few years, and for everyone new that’s came and said hey, helped out, used the project or simply stopped by the site and github repo. I hope Oragono keeps being useful for whatever you’re using it for – whether it’s public or private :)
If you have any trouble, feel free to talk to us in #ircdocs
on Freenode, or email me at daniel@danieloaks.net. Always happy to help out, fix bugs, or better support new use cases!
25 Sep 2017 - Link
Hey everyone, dan here! It’s been a while since the last release and the last post, so let’s go over what’s changed since then and what’s in mind for the future.
First of all, the new release. You can find the downloads [here]. In v0.9.0 comes:
Crash fixes.
Memory leak fixes.
Bad nickname fixes.
Slightly better testing support, and more inbuilt tests.
There is some new functionality, such as the +R flag allowing users to block all messages from unregistered users, but this release is mostly fixes and some updates for production use (such as allowing the HAProxy PROXY command for finer-grained TLS control).
Thanks to both Euan Kemp (@euank) and Shivaram Lingamneni (@slingamn) for the help with this release as well, it’s much appreciated.
In terms of future plans, the ones laid out in the last post are basically still valid. I’m hoping to get IP Cloaking soon (but it is a complex feature), and other than that XLINE/DNSBL are the next ones in line. Work’s been fairly busy lately so I haven’t been able to spend as much time on this as I’d like to, but I’ll always be here working on it :)
As always if you have any other ideas or want to send me feedback, feel free to pop into our IRC channel (#oragono on Freenode) or send me an email!
P.S. Let me know if you want to catch up at freenode #live! I’ll be rocking around there somewhere with some of the other IRCv3 crew.
27 Jun 2017 - Link
Hey everyone, this is the first post on the new News section of our site! I’m planning to make a post each time we release a new version of Oragono, so people can keep an eye on server updates just by following the RSS feed here: feed.xml
Let’s talk about the new release. You can find it [here]. v0.8.1 adds:
A bunch of snomasks to help opers keep better oversight of what’s going on on their servers.
A draft channel renaming capability (the IRCv3 proposal can be found here).
The ability to kill matching users when you apply a ban with DLINE or KLINE.
Various other fixes and minor improvements.
As well, thanks to Sean Enck (@enckse) we have a new Arch Linux AUR package here. This should help users on Arch more easily install Oragono for the first time!
We’re also now a Github organisation, which holds Oragono as well as some of the dependencies we’ve taken, modified and used.
In terms of future direction, there’s a bunch of features I have planned. Let me quickly talk about each of them:
IP Cloaking: This is, rather than displaying IP addresses of connected clients you’d display something like 4yfdxndgf3.jpbkkfnt3g.fhbk6ukspg.5jqti37n7o.test-cloaked instead. I’m pretty interested in this, and I’d say this is something I really want in the next release.
XLINE ‘Insane’ Protections: Basically, this stops you from accidentally banning half your network with a single command. With this protection, you’d need to add the INSANE paramter to your DLINE/KLINE command, if it bans more than x% of your network’s users.
DNSBL (DNS Blacklist) Support: This is another one that most other IRCds out there already have, but Oragono doesn’t. I think it makes sense to implement this within a few releases, but figuring out exactly how configurable to make it is gonna be the challenge.
Email Verification for Accounts: Right now, Oragono only supports registing for accounts with no sort of verification. I’ve been planning this for a while but it’s still honestly on the backburner. Does anyone have a pressing need for this, and how should I implement it? Standard SMTP, using a mail daemon such as sendmail on the machine itself? If you’d like this, feel free to reach out and tell me!
Unit Testing: I want to start on this, but it’s difficult to dive into it. I might look into this properly after the next release.
Extbans: I really want to do this, but it’s on the backburner right now.
REST API and Web Interface: Nice, but entirely on the backburner right now.
S2S Linking Protocol: Heh. No time soon at all, look at DanielOaks/dcmi for more on this.
So that’s how things are at the moment, and where I plan taking things forwards. Have any other ideas or want to send me feedback? Feel free to pop into our IRC channel (#oragono on Freenode) or send me an email.
Thanks again to everyone submitting bugs, fixes, and just giving their feedback! It’s exciting to have this be used and useful out there, and I hope we can keep making it better as we go.