feat(release): 2.0.0 -- nine cycles ship, and the config starts over
v1.6.0 through v1.15.0 were never published. The whole window layer was being rewritten from ImGui defaults to custom drawing, and repo.json deliberately kept its links on v1.5.6 so nobody could update into a half-finished state. That work lands here in one release. The config is not migrated, it is replaced. A config carried across nine cycles of window rebuilds holds values chosen against surfaces that no longer exist, and starting over is the only way to be sure every install is on the same defaults. The message database is a separate file and is not touched. The old config is copied to HellionChat.json.pre-2.0.0.bak first, so rolling back to 1.5.6 stays a file copy rather than an evening of clicking settings back in. Config schema 27. The reset runs from the constructor, before LoadAsync seeds the default tabs, and the self-test now fails if the tab list is empty at /xlperf -- that ordering breaking would leave every user with no tabs and nothing else in the plugin would notice. Default layout gains an Emote tab: custom emotes, standard emotes and echo. A tester asked for it, emotes get lost between system notices otherwise. Manifest, README, roadmap and the four changelog consumers are on 2.0.0. The release notes lead with what was fixed rather than what was redrawn -- retroactive cleanup that could never be applied, a compaction that reported deleting nothing while deleting everything, pinned tell tabs that came up empty for a session. And with the one behaviour change users should know about: the channel grid is authoritative over storage now, so anyone who had unticked channels while the unknown-channel failsafe was on stores less than they did before.
This commit is contained in:
@@ -11,6 +11,48 @@ releases as an overview and links to the release pages for details.
|
||||
|
||||
---
|
||||
|
||||
## [2.0.0] — 2026-08-19
|
||||
|
||||
Rebuilt, repaired, reset. Everything developed as v1.6.0 through v1.15.0 ships
|
||||
here: those versions were never published on their own, because the whole window
|
||||
layer was being rewritten from ImGui defaults to custom drawing and shipping it
|
||||
half-done would have been worse than shipping nothing.
|
||||
|
||||
**This release resets your configuration.** Nine cycles of window rebuilds left
|
||||
saved values pointing at surfaces that no longer exist, and starting over is the
|
||||
only way to be sure every install is on the same defaults. The message database is
|
||||
untouched — it lives in its own file. The previous config is kept alongside it as
|
||||
`HellionChat.json.pre-2.0.0.bak`.
|
||||
|
||||
### Added
|
||||
|
||||
- An Emote tab in the default layout, requested by a tester: custom emotes,
|
||||
standard emotes and echo, which is where emote-adjacent output lands.
|
||||
- `/hellion wizard` reopens the first-run wizard. It had no way back into it at
|
||||
all — the reopen button lost its call site in the four-step rewrite and nothing
|
||||
replaced it, so the only route was closing the game and editing the config.
|
||||
- The plugin notice on the welcome page: plugins are a grey area in this game and
|
||||
do not belong in public channels.
|
||||
|
||||
### Changed
|
||||
|
||||
- The first-run wizard is drawn like the rest of the plugin. Profile cards are
|
||||
tiles in the row language, sized to their own text so a privacy description is
|
||||
never cut off mid-sentence, and their emoji are icon-font glyphs.
|
||||
- The welcome page is opaque, unlike every other window here. It is read once and
|
||||
carries a privacy decision; the game showing through it was noise.
|
||||
- Config version 27 replaces the config instead of migrating it.
|
||||
|
||||
### Fixed
|
||||
|
||||
- The GDPR notice for the full-history profile is shown again. It had been
|
||||
translated into 25 languages and drawn nowhere since 2026-05-18.
|
||||
- Two profile cards claimed to be recommended at once: the badge sat on one while
|
||||
the other still said "(recommended)" in its heading, in every language.
|
||||
- Reopening the wizard no longer carries staged choices from a previous run.
|
||||
|
||||
---
|
||||
|
||||
## [1.14.0] — unreleased (local only)
|
||||
|
||||
The input row. It was the one surface a user actually works in and it spoke three
|
||||
|
||||
+44
-38
@@ -10,52 +10,58 @@ be a poor fit for the plugin's privacy-first scope during brainstorming.
|
||||
|
||||
---
|
||||
|
||||
## Current development (unreleased)
|
||||
## Released
|
||||
|
||||
The published release is **v1.5.6**. Development since then runs as a UI rebuild towards v2.0.0 and
|
||||
is not published: the whole window layer is being rewritten from ImGui defaults to custom drawing.
|
||||
Versions v1.6.0 through v1.14.0 are local development states, and `repo.json` deliberately keeps
|
||||
its download links on v1.5.6 so nobody updates into a partial state.
|
||||
**v2.0.0 — Rebuilt, Repaired, Reset (2026-08-19)** ships everything that was
|
||||
developed as v1.6.0 through v1.15.0. Those versions were never published on their
|
||||
own: the whole window layer was being rewritten from ImGui defaults to custom
|
||||
drawing, and `repo.json` deliberately kept its download links on v1.5.6 so nobody
|
||||
would update into a partial state.
|
||||
|
||||
Where it stands:
|
||||
What went into it, cycle by cycle:
|
||||
|
||||
- **v1.6.0 to v1.8.x** — new window layer, settings window, channel pop-outs, and the restoration
|
||||
pass that brought v1.5.6 behaviour back onto it.
|
||||
- **v1.6.0 to v1.8.x** — new window layer, settings window, channel pop-outs, and
|
||||
the restoration pass that brought v1.5.6 behaviour back onto it.
|
||||
- **v1.9.0** — polish and a concurrency hardening pass.
|
||||
- **v1.10.0** — the style foundation: a scale-aware layout layer, held hover state, and five drawn
|
||||
widgets, applied to the sidebar, the tab strip and the status bar.
|
||||
- **v1.11.0** — the settings window rebuilt on those widgets, and the defects that surfaced while
|
||||
doing it: three settings with no control, a pinned tell tab that never loaded its history, six
|
||||
switches that changed nothing, and dropdowns listing blank rows. Contrast is measured against the
|
||||
surface now rather than taken from the theme.
|
||||
- **v1.12.0** — the reconnection pass. The v1.6.0 window rebuild had left export, the tab editor,
|
||||
database maintenance and pinning unreachable, and 433 of 824 translation keys with no caller. All
|
||||
four features are back, the settings window is translated into 25 languages, and the channel grid
|
||||
is authoritative over what gets stored.
|
||||
- **v1.13.0** — typography. Named type roles instead of one size, a channel header above the
|
||||
conversation, timestamps in a column of their own, and rows with a surface. Screenshot mode
|
||||
reached one of four surfaces that draw a tab name and now reaches all of them.
|
||||
- **v1.14.0** — the input row: two ghost buttons and a menu where five filled defaults sat, a
|
||||
field with its own surface and focus rail, popups built from the sidebar's row shape, and a
|
||||
softened seam between the tab list and the conversation. Plus a style lab under
|
||||
`/hellion lab` and a preflight guard for the RGBA/ABGR contrast trap.
|
||||
- **v1.15.0** — the first-run wizard, the last surface still drawn in ImGui defaults, and the
|
||||
first thing a tester sees.
|
||||
- **v1.10.0** — the style foundation: a scale-aware layout layer, held hover state,
|
||||
and five drawn widgets, applied to the sidebar, the tab strip and the status bar.
|
||||
- **v1.11.0** — the settings window rebuilt on those widgets, and the defects that
|
||||
surfaced while doing it: three settings with no control, a pinned tell tab that
|
||||
never loaded its history, six switches that changed nothing, and dropdowns
|
||||
listing blank rows. Contrast is measured against the surface now rather than
|
||||
taken from the theme.
|
||||
- **v1.12.0** — the reconnection pass. The v1.6.0 window rebuild had left export,
|
||||
the tab editor, database maintenance and pinning unreachable, and 433 of 824
|
||||
translation keys with no caller. All four features are back, the settings window
|
||||
is translated into 25 languages, and the channel grid is authoritative over what
|
||||
gets stored.
|
||||
- **v1.13.0** — typography. Named type roles instead of one size, a channel header
|
||||
above the conversation, timestamps in a column of their own, and rows with a
|
||||
surface. Screenshot mode reached one of four surfaces that draw a tab name and
|
||||
now reaches all of them.
|
||||
- **v1.14.0** — the input row: two ghost buttons and a menu where five filled
|
||||
defaults sat, a field with its own surface and focus rail, popups built from the
|
||||
sidebar's row shape, and a softened seam between the tab list and the
|
||||
conversation. Plus a style lab under `/hellion lab` and a preflight guard for the
|
||||
RGBA/ABGR contrast trap.
|
||||
- **v2.0.0** — the first-run wizard, the last surface still drawn in ImGui
|
||||
defaults and the first thing a new user sees. Plus the config reset that puts
|
||||
every install on the same defaults after nine cycles of rebuilding.
|
||||
|
||||
The sidebar is no longer on this list. Earlier drafts had it moving from tab rows to channel
|
||||
rows, but both reasons for that are gone: it was flat and unstyled when the idea was written,
|
||||
and it is neither now — it draws its own row surfaces and already groups pinned and auto-tell
|
||||
tabs under headings. What remained was a change to how the plugin is operated rather than how
|
||||
it looks, and tabs are what users have learned. They stay.
|
||||
|
||||
A tester beta follows once the visual pass is complete.
|
||||
The sidebar is no longer on this list. Earlier drafts had it moving from tab rows
|
||||
to channel rows, but both reasons for that are gone: it was flat and unstyled when
|
||||
the idea was written, and it is neither now — it draws its own row surfaces and
|
||||
already groups pinned and auto-tell tabs under headings. What remained was a change
|
||||
to how the plugin is operated rather than how it looks, and tabs are what users have
|
||||
learned. They stay.
|
||||
|
||||
## After that
|
||||
|
||||
**v1.5.7 — Ad-Block / Spam-Filter** remains the next feature scope: the hybrid ad-block and
|
||||
spam-filter cycle, combining a lightweight built-in filter with optional `NoSoliciting`
|
||||
IPC integration. Plugin Integrations Wave 2-6 (Context-Menu, NotificationMaster, Moodles,
|
||||
ExtraChat, XIVIM Quick-DM) follows.
|
||||
**Ad-Block / Spam-Filter** is the next feature scope: a hybrid cycle combining a
|
||||
lightweight built-in filter with optional `NoSoliciting` IPC integration. It was
|
||||
planned as v1.5.7 before the window rebuild took priority. Plugin Integrations
|
||||
Wave 2-6 (Context-Menu, NotificationMaster, Moodles, ExtraChat, XIVIM Quick-DM)
|
||||
follows.
|
||||
|
||||
Native-speaker review of the AI-assisted v1.5.3 translations (13 legacy Crowdin locales) runs in
|
||||
parallel as a continuous correction pass, gathered via the Hellion Forge Discord.
|
||||
|
||||
Reference in New Issue
Block a user