chore(release): bump version to 0.5.3
Single-fix patch to close the CodeQL pointer-arithmetic alert that v0.5.2 left open. v0.5.2 already shipped, so we tag forward instead of moving the published tag.
This commit is contained in:
1 parent
48b3d5c6b1
commit
93d52ae819
3 files changed
+27
-7
No files matched your search
@@ -4,7 +4,7 @@
|
|||||||
0.1.0 is our bootstrap release; the underlying Chat 2 base is
|
0.1.0 is our bootstrap release; the underlying Chat 2 base is
|
||||||
called out in the yaml changelog so users can see what it
|
called out in the yaml changelog so users can see what it
|
||||||
derives from. -->
|
derives from. -->
|
||||||
<Version>0.5.2</Version>
|
<Version>0.5.3</Version>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<!-- HellionChat fork: assembly is renamed so Dalamud uses
|
<!-- HellionChat fork: assembly is renamed so Dalamud uses
|
||||||
pluginConfigs/HellionChat instead of pluginConfigs/ChatTwo,
|
pluginConfigs/HellionChat instead of pluginConfigs/ChatTwo,
|
||||||
|
|||||||
@@ -44,6 +44,26 @@ tags:
|
|||||||
- Replacement
|
- Replacement
|
||||||
- Privacy
|
- Privacy
|
||||||
changelog: |-
|
changelog: |-
|
||||||
|
**Hellion Chat 0.5.3 — Pointer arithmetic hardening**
|
||||||
|
|
||||||
|
Single hardening fix on top of v0.5.2.
|
||||||
|
|
||||||
|
Security:
|
||||||
|
|
||||||
|
- Closed CodeQL Critical alert "unvalidated local pointer
|
||||||
|
arithmetic" in ImGuiUtil.WrapText. The earlier v0.5.2 fix
|
||||||
|
handled the empty-input edge case but the rule re-fired on the
|
||||||
|
pointer arithmetic itself because Encoding.GetBytes is virtual
|
||||||
|
on the base Encoding class and CodeQL therefore tracks its
|
||||||
|
return as untrusted input. Now compute the expected byte count
|
||||||
|
via GetByteCount on the same encoder and bail out if a swapped
|
||||||
|
Encoding ever returned a buffer of the wrong length. Real
|
||||||
|
consistency check, not a dead defensive guard.
|
||||||
|
|
||||||
|
No new features, no migration, configuration version stays at 10.
|
||||||
|
|
||||||
|
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||||
|
|
||||||
**Hellion Chat 0.5.2 — Bugfix patch**
|
**Hellion Chat 0.5.2 — Bugfix patch**
|
||||||
|
|
||||||
Three corrections to the v0.5.1 surface plus two security findings
|
Three corrections to the v0.5.1 surface plus two security findings
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
"Author": "JonKazama-Hellion",
|
"Author": "JonKazama-Hellion",
|
||||||
"Name": "Hellion Chat",
|
"Name": "Hellion Chat",
|
||||||
"InternalName": "HellionChat",
|
"InternalName": "HellionChat",
|
||||||
"AssemblyVersion": "0.5.2.0",
|
"AssemblyVersion": "0.5.3.0",
|
||||||
"Description": "Hellion Chat is built on top of Chat 2 with one removal and a stack\nof privacy controls on top. Tabs, channel filters, RGB colours,\nemotes, screenshot mode, IPC integration and the chat replacement\nwindow itself work the same. The optional webinterface that Chat 2\nships is intentionally not part of this fork because it serves a\ndifferent use case from the smaller default footprint Hellion Chat\nis built around.\n\nOn top of that, Hellion Chat adds privacy and data-handling controls\ndesigned to align with the modern data protection rules that apply\nacross the EU, the United States and Japan. By default only your own\nconversations are stored; messages from strangers, NPCs and system\nspam stay out of the database. Retention windows are configurable per\nchannel, history can be wiped retroactively, and stored data can be\nexported on demand.\n\nKey additions on top of Chat 2:\n\n- Channel whitelist with a Privacy-First default\n- Per-channel retention with a daily background sweep\n- Retroactive cleanup with a Ctrl+Shift confirm\n- Export to Markdown, JSON or CSV\n- First-run wizard with three preset profiles (Privacy-First, Casual,\n Full History)\n- Bilingual UI (English and German) with live language switching\n- Independent plugin state — own config file and database directory,\n so Hellion Chat does not share state with the upstream plugin\n\nBased on Chat 2 by Infi and Anna, licensed under EUPL-1.2.",
|
"Description": "Hellion Chat is built on top of Chat 2 with one removal and a stack\nof privacy controls on top. Tabs, channel filters, RGB colours,\nemotes, screenshot mode, IPC integration and the chat replacement\nwindow itself work the same. The optional webinterface that Chat 2\nships is intentionally not part of this fork because it serves a\ndifferent use case from the smaller default footprint Hellion Chat\nis built around.\n\nOn top of that, Hellion Chat adds privacy and data-handling controls\ndesigned to align with the modern data protection rules that apply\nacross the EU, the United States and Japan. By default only your own\nconversations are stored; messages from strangers, NPCs and system\nspam stay out of the database. Retention windows are configurable per\nchannel, history can be wiped retroactively, and stored data can be\nexported on demand.\n\nKey additions on top of Chat 2:\n\n- Channel whitelist with a Privacy-First default\n- Per-channel retention with a daily background sweep\n- Retroactive cleanup with a Ctrl+Shift confirm\n- Export to Markdown, JSON or CSV\n- First-run wizard with three preset profiles (Privacy-First, Casual,\n Full History)\n- Bilingual UI (English and German) with live language switching\n- Independent plugin state — own config file and database directory,\n so Hellion Chat does not share state with the upstream plugin\n\nBased on Chat 2 by Infi and Anna, licensed under EUPL-1.2.",
|
||||||
"ApplicableVersion": "any",
|
"ApplicableVersion": "any",
|
||||||
"RepoUrl": "https://github.com/JonKazama-Hellion/HellionChat",
|
"RepoUrl": "https://github.com/JonKazama-Hellion/HellionChat",
|
||||||
@@ -20,12 +20,12 @@
|
|||||||
"CanUnloadAsync": false,
|
"CanUnloadAsync": false,
|
||||||
"LoadPriority": 0,
|
"LoadPriority": 0,
|
||||||
"Punchline": "Chat 2 with privacy controls aligned to EU, US and JP rules",
|
"Punchline": "Chat 2 with privacy controls aligned to EU, US and JP rules",
|
||||||
"Changelog": "**Hellion Chat 0.5.2 — Bugfix patch**\n\nThree corrections to the v0.5.1 surface plus two security findings\nclosed by the new manual-build CodeQL workflow. No new features, no\nmigration, configuration version stays at 10.\n\nBug fixes:\n\n- Auto-Tell-Tabs: the \"earlier conversations\" separator no longer\n lands below the live tell. The triggering message was already\n persisted in the store by the time the spawn handler fired, so\n it appeared as the youngest historic message. The preload now\n excludes the live tell explicitly and pulls one extra row so the\n user does not lose a slot to the exclusion.\n- General/Aussehen: HellionThemeWindowOpacity ships at 0.5 so a\n fresh install lands at the more glass-like default. Existing\n users keep their saved value.\n- General/Allgemein: Use24HourClock ships at true so a German /\n European install starts on 24h time without a manual flip.\n- Tabs/Gruppe: the default Gruppe preset no longer auto-routes\n /party into the tab. The tab still collects /party, /alliance,\n /pvpteam together as a read surface but does not steal the\n input focus when you wanted /alliance.\n\nSecurity:\n\n- Closed CodeQL Critical alert \"unvalidated local pointer\n arithmetic\" in ImGuiUtil.WrapText: empty splits between\n consecutive newlines produced a zero-length byte array whose\n fixed pointer collapsed onto its end pointer. Bail before the\n fixed block when the slice is empty.\n- Closed CodeQL Medium alert \"workflow does not contain\n permissions\" by pinning the build workflow to contents: read.\n\nDocumentation: README now carries Build, CodeQL, License, Latest\nRelease, Dalamud API, .NET and FFXIV badges. License detection\npicks up EUPL-1.2 correctly via a separated COPYRIGHT file. Added\nNOTICE.md and UPSTREAM_SYNC.md after leaving the GitHub fork\nnetwork.\n\nBased on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).\n\n**Hellion Chat 0.5.1 — Backlog Sweep**\n\nPure hardening and polish. No new features. Eight backlog items\nfrom the v0.5.0 codebase review collected into one patch:\n\n- Cleanup preview now flags itself as out-of-date when the user\n edits the whitelist after the last refresh, and the refresh\n button is visually emphasised in that state\n- Greeted Auto-Tell-Tabs now also dim their selection and hover\n backgrounds in the sidebar, not just the text\n- Performance section in the General tab moves to the standard\n HelpMarker tooltip pattern instead of a wall-of-text description\n- Tabs and Database settings tabs pull their display name from\n HellionStrings instead of the upstream Language bundle, so all\n eight tabs share one i18n source\n- FontChooser results are now marshalled onto the framework thread\n via Plugin.Framework.Run instead of being written to settings\n state directly from the threadpool\n- EmoteCache.LoadData drops async void and the four CS8618 build\n warnings the build has been carrying since v0.4.0\n- All MessageStore SQL paths that fed dynamic value lists into\n interpolated SQL now use named parameter bindings via a new\n BindIntList helper. Same behaviour, defence against future\n user-input regressions\n\nConfiguration version is unchanged at 10. No migration. Existing\ninstalls upgrade silently.\n\nBased on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).\n\n**Hellion Chat 0.5.0 — Settings UX polish**\n\nThe settings window has been pulled apart and rebuilt around eight\nthemed tabs instead of the twelve organic ones it grew into.\nSettings now sit where they belong and the wall-of-text descriptions\nhave been replaced with hover help markers across every section.\n\nWhat changed in this release:\n\n- Twelve tabs collapsed into eight: General, Appearance, Window,\n Chat, Tabs, Privacy, Database and Information\n- Theme and font controls moved out of the Privacy tab into\n Appearance where they belong\n- Auto-Tell-Tabs settings, message preview and emote controls now\n live under one Chat tab with collapsible sections\n- About and Changelog merged into a single Information tab\n- Disabled settings keep their tooltip help marker visible so you\n can still read why an option is greyed out\n- Section headings start collapsed by default, the same pattern\n used for the Auto-Tell-Tabs preload section in 0.4.0\n\nConfiguration version bumps from 9 to 10 as a wipe migration. The\nold config file is copied to HellionChat.json.pre-v10-backup before\nthe new defaults are written, so you can restore your previous\nsetup by hand if anything looks off. A one-shot notification on\nfirst start explains the reset.\n\nNo changes to message storage, retention sweep, the privacy filter\nor the export pipeline. Tabs and chat history are untouched by the\nmigration.\n\nBased on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).\n\n**Hellion Chat 0.4.0 — Auto-Tell-Tabs**\n\nAuto-Tell-Tabs lets you turn each /tell into a session-only tab\ndedicated to that conversation partnLine truncated
|
"Changelog": "**Hellion Chat 0.5.3 — Pointer arithmetic hardening**\n\nSingle hardening fix on top of v0.5.2.\n\nSecurity:\n\n- Closed CodeQL Critical alert \"unvalidated local pointer\n arithmetic\" in ImGuiUtil.WrapText. The earlier v0.5.2 fix\n handled the empty-input edge case but the rule re-fired on the\n pointer arithmetic itself because Encoding.GetBytes is virtual\n on the base Encoding class and CodeQL therefore tracks its\n return as untrusted input. Now compute the expected byte count\n via GetByteCount on the same encoder and bail out if a swapped\n Encoding ever returned a buffer of the wrong length. Real\n consistency check, not a dead defensive guard.\n\nNo new features, no migration, configuration version stays at 10.\n\nBased on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).\n\n**Hellion Chat 0.5.2 — Bugfix patch**\n\nThree corrections to the v0.5.1 surface plus two security findings\nclosed by the new manual-build CodeQL workflow. No new features, no\nmigration, configuration version stays at 10.\n\nBug fixes:\n\n- Auto-Tell-Tabs: the \"earlier conversations\" separator no longer\n lands below the live tell. The triggering message was already\n persisted in the store by the time the spawn handler fired, so\n it appeared as the youngest historic message. The preload now\n excludes the live tell explicitly and pulls one extra row so the\n user does not lose a slot to the exclusion.\n- General/Aussehen: HellionThemeWindowOpacity ships at 0.5 so a\n fresh install lands at the more glass-like default. Existing\n users keep their saved value.\n- General/Allgemein: Use24HourClock ships at true so a German /\n European install starts on 24h time without a manual flip.\n- Tabs/Gruppe: the default Gruppe preset no longer auto-routes\n /party into the tab. The tab still collects /party, /alliance,\n /pvpteam together as a read surface but does not steal the\n input focus when you wanted /alliance.\n\nSecurity:\n\n- Closed CodeQL Critical alert \"unvalidated local pointer\n arithmetic\" in ImGuiUtil.WrapText: empty splits between\n consecutive newlines produced a zero-length byte array whose\n fixed pointer collapsed onto its end pointer. Bail before the\n fixed block when the slice is empty.\n- Closed CodeQL Medium alert \"workflow does not contain\n permissions\" by pinning the build workflow to contents: read.\n\nDocumentation: README now carries Build, CodeQL, License, Latest\nRelease, Dalamud API, .NET and FFXIV badges. License detection\npicks up EUPL-1.2 correctly via a separated COPYRIGHT file. Added\nNOTICE.md and UPSTREAM_SYNC.md after leaving the GitHub fork\nnetwork.\n\nBased on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).\n\n**Hellion Chat 0.5.1 — Backlog Sweep**\n\nPure hardening and polish. No new features. Eight backlog items\nfrom the v0.5.0 codebase review collected into one patch:\n\n- Cleanup preview now flags itself as out-of-date when the user\n edits the whitelist after the last refresh, and the refresh\n button is visually emphasised in that state\n- Greeted Auto-Tell-Tabs now also dim their selection and hover\n backgrounds in the sidebar, not just the text\n- Performance section in the General tab moves to the standard\n HelpMarker tooltip pattern instead of a wall-of-text description\n- Tabs and Database settings tabs pull their display name from\n HellionStrings instead of the upstream Language bundle, so all\n eight tabs share one i18n source\n- FontChooser results are now marshalled onto the framework thread\n via Plugin.Framework.Run instead of being written to settings\n state directly from the threadpool\n- EmoteCache.LoadData drops async void and the four CS8618 build\n warnings the build has been carrying since v0.4.0\n- All MessageStore SQL paths that fed dynamic value lists into\n interpolated SQL now use named parameter bindings via a new\n BindIntList helper. Same behaviour, defence against future\n user-input regressions\n\nConfiguration version is unchanged at 10. No migration. Existing\ninstalls upgrade silently.\n\nBased on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).\n\n**Hellion Chat 0.5.0 — Settings UX polish**\n\nThe settings window has been pulled apart and rebuilt around eight\nthemed tabs instead of the twelve organic ones it grew into.\nSettings now sit where they belong and the wall-of-text descriptions\nhave been replaced with hover help markers across every section.\n\nWhat changed in this release:\n\n- Twelve tabs collapsed into eight: General, Appearance, Window,\n Chat, Tabs, Privacy, Database and Information\n- Theme and font controls moved out of the Privacy tab into\n Appearance where they belong\n- Auto-Tell-Tabs settings, message preview and emote controls now\n live under one Chat tab with collapsible sections\n- About and Changelog merged into a single Information tab\n- Disabled settings keep their tooltip help marker visible so you\n can still read why Line truncated
|
||||||
"AcceptsFeedback": true,
|
"AcceptsFeedback": true,
|
||||||
"DownloadLinkInstall": "https://github.com/JonKazama-Hellion/HellionChat/releases/download/v0.5.2/latest.zip",
|
"DownloadLinkInstall": "https://github.com/JonKazama-Hellion/HellionChat/releases/download/v0.5.3/latest.zip",
|
||||||
"DownloadLinkUpdate": "https://github.com/JonKazama-Hellion/HellionChat/releases/download/v0.5.2/latest.zip",
|
"DownloadLinkUpdate": "https://github.com/JonKazama-Hellion/HellionChat/releases/download/v0.5.3/latest.zip",
|
||||||
"DownloadLinkTesting": "https://github.com/JonKazama-Hellion/HellionChat/releases/download/v0.5.2/latest.zip",
|
"DownloadLinkTesting": "https://github.com/JonKazama-Hellion/HellionChat/releases/download/v0.5.3/latest.zip",
|
||||||
"TestingAssemblyVersion": "0.5.2.0",
|
"TestingAssemblyVersion": "0.5.3.0",
|
||||||
"IconUrl": "https://raw.githubusercontent.com/JonKazama-Hellion/HellionChat/main/ChatTwo/images/icon.png",
|
"IconUrl": "https://raw.githubusercontent.com/JonKazama-Hellion/HellionChat/main/ChatTwo/images/icon.png",
|
||||||
"ImageUrls": [],
|
"ImageUrls": [],
|
||||||
"DownloadCount": 0,
|
"DownloadCount": 0,
|
||||||
|
|||||||
Reference in new issue
Block a user