Skip to content

Commit 2a114dc

Browse files
authored
release v2.18.0-rc1 (#2364)
1 parent da037c0 commit 2a114dc

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

CHANGELOG.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,48 @@
11
# Changelog
22
All notable changes to Ergo will be documented in this file.
33

4+
## [2.18.0-rc1] - 2026-03-15
5+
6+
We're pleased to be publishing the release candidate for v2.18.0 (the official release should follow within a week or so). This release adds support for PostgreSQL and SQLite as history backends, expands the HTTP API, and includes bug fixes and minor improvements.
7+
8+
This release includes changes to the config file format, all of which are fully backwards-compatible and do not require updating the file before upgrading. It includes no changes to the database file format.
9+
10+
Due to the additional database drivers included in the default build, the size of the Ergo executable binary has increased since v2.17.0 (for example, the Linux binary for x86-64 has increased from 16.2 MiB to 26.1 MiB). See [docs/BUILD.md](https://github.com/ergochat/ergo/blob/master/docs/BUILD.md) if you need to build a smaller binary.
11+
12+
Many thanks to [@clbm87](https://github.com/clbm87), [@emersion](https://github.com/emersion), [@felix](https://github.com/felix), flurry, [@furudean](https://github.com/furudean), [@k4ct0](https://github.com/k4ct0), [@mauropcorrea](https://github.com/mauropcorrea), [@NyaaaWhatsUpDoc](https://github.com/NyaaaWhatsUpDoc), [@poVoq](https://github.com/poVoq), [@progval](https://github.com/progval), [@rys](https://github.com/rys), Stryker, and th0th for helpful discussions, contributing patches, reporting issues, and helping test.
13+
14+
### Config changes
15+
* Added `server.postgresql` block to configure a PostgreSQL history backend. (#2322, #2347)
16+
* Added `server.sqlite` block to configure a SQLite history backend. (#2352)
17+
* Added `server.initial-notice` to send a configurable notice to clients immediately after they connect, which can be used for open proxy detection (e.g., with HOPM) (#2317, thanks Stryker!)
18+
19+
### Added
20+
* Added support for PostgreSQL and SQLite as history backends (#2322, #2352, thanks [@felix](https://github.com/felix), [@NyaaaWhatsUpDoc](https://github.com/NyaaaWhatsUpDoc), [@poVoq](https://github.com/poVoq)!)
21+
* Added new HTTP API endpoints (thanks [@clbm87](https://github.com/clbm87), flurry, [@furudean](https://github.com/furudean), [@mauropcorrea](https://github.com/mauropcorrea)!):
22+
* `/v1/list` to list channels (#2358)
23+
* `/v1/defcon` to view or modify the DEFCON level (#2359)
24+
* `/v1/ns/passwd` to change account passwords (#2329)
25+
* Added support for `draft/ACCOUNTREQUIRED` in `005` ISUPPORT tokens when `accounts.require-sasl` is enabled (#2341)
26+
27+
### Fixed
28+
* Push notifications now include the `msgid` tag, as required by the specification (#2350)
29+
* Fixed some cases where environment variable config overrides did not apply as expected (e.g., individual oper entries can now be overridden without replacing the entire `opers` block) (#2275, #2362, thanks th0th!)
30+
* Fixed error cases in `CS DEOP` and `EXTJWT` causing client disconnection (#2345, #2346, thanks [@k4ct0](https://github.com/k4ct0)!)
31+
* Fixed some `REDACT` responses (#2319, #2320)
32+
* Fixed some `FAIL` responses to `WEBPUSH` (#2351)
33+
* Fixed the `+l` (user limit) channel mode to reject non-positive values with an appropriate error (#2325, thanks [@progval](https://github.com/progval)!)
34+
* Fixed `MONITOR` so that clients monitoring a user receive `METADATA` notifications for that user even without the `extended-monitor` capability (#2309, #2310)
35+
* Improved handling of PROXY protocol errors on `proxy: true` listeners (#2334)
36+
* Fixed validation of the `bcrypt-cost` config value to prevent silent errors (#2311, #2312, thanks [@rys](https://github.com/rys)!)
37+
38+
### Changed
39+
* HTTP API: reorganized NickServ-related endpoints under a `/v1/ns/` prefix (`/v1/ns/info`, `/v1/ns/list`, `/v1/ns/passwd`). The previous endpoint names (`/v1/account_details`, `/v1/account_list`) are retained as aliases for backwards compatibility. (#2329)
40+
* The `/v1/check_auth` API endpoint now supports certificate fingerprint authentication (#2354, thanks flurry!)
41+
* Reduced the deadline for `proxy: true` listeners to read the PROXY protocol header from 1 minute to 5 seconds (#2334)
42+
43+
### Internal
44+
* Official release builds use Go 1.26.1 (#2330)
45+
446
## [2.17.0] - 2025-12-22
547

648
We're pleased to be publishing v2.17.0, a new stable release. This release adds support for the [IRCv3 metadata specification](https://ircv3.net/specs/extensions/metadata), thanks to [@thatcher-gaming](https://github.com/thatcher-gaming), as well as bug fixes and minor updates.

irc/version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import "fmt"
77

88
const (
99
// SemVer is the semantic version of Ergo.
10-
SemVer = "2.18.0-unreleased"
10+
SemVer = "2.18.0-rc1"
1111
)
1212

1313
var (

0 commit comments

Comments
 (0)