Skip to content

Commit 0e8a2e0

Browse files
committed
chore(release): prepare v1.3.3
Bump version strings across install scripts, README, SECURITY, release workflow, and packaging templates. SHA256 placeholders until assets upload.
1 parent f3205d9 commit 0e8a2e0

21 files changed

Lines changed: 295 additions & 46 deletions

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ on:
66
workflow_dispatch:
77
inputs:
88
version:
9-
description: 'Version to build (e.g., v1.3.2)'
9+
description: 'Version to build (e.g., v1.3.3)'
1010
required: true
11-
default: 'v1.3.2'
11+
default: 'v1.3.3'
1212

1313
permissions:
1414
contents: read

CHANGELOG.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,16 @@ Narrative notes by release. Per-file binaries and assets: [GitHub releases](http
66

77
On **`main`** only; not part of the latest tagged release until you tag and publish. Compare against the current tag on [GitHub releases](https://github.com/Cod-e-Codes/marchat/releases).
88

9-
- **Dependencies**: **modernc.org/sqlite** v1.55.0 (SQLite 3.53.3; **modernc.org/libc** v1.74.1); **github.com/mattn/go-runewidth** v0.0.27.
10-
- **Server**: **Fix:** oversized file WebSocket messages hit explicit read-limit handling with correct rejection logging and a System reply when the connection is still writable; read limit accounts for base64 JSON wire size (not raw bytes only); rejects declared `size` and actual payload length above the limit.
9+
## v1.3.3
10+
11+
**Released 2026-08-03.** Since **[v1.3.2](https://github.com/Cod-e-Codes/marchat/releases/tag/v1.3.2)**; compare [`v1.3.2...v1.3.3`](https://github.com/Cod-e-Codes/marchat/compare/v1.3.2...v1.3.3). Commits: **`git log v1.3.2..v1.3.3 --oneline`**.
12+
13+
- **Server**: **Fix:** oversized file WebSocket messages hit explicit read-limit handling with correct rejection logging and a System reply when the connection is still writable; read limit accounts for base64 JSON wire size (not raw bytes only); rejects declared `size` and actual payload length above the limit ([#114](https://github.com/Cod-e-Codes/marchat/issues/114)).
1114
- **Client**: **Fix:** WebSocket close **1009** (message too big) shows a file-size error instead of a generic reconnect warning.
12-
- **Plugins**: Archive extraction uses **`os.OpenRoot`** scoped writes and **`filepath.IsLocal`** entry validation so zip-slip static analysis and runtime checks align.
15+
- **Plugins**: Archive extraction uses **`os.OpenRoot`** scoped writes and **`filepath.IsLocal`** entry validation so zip-slip static analysis and runtime checks align (CodeQL **go/zipslip**).
16+
- **Docs**: **PROTOCOL** and **TESTING** note file rejection behavior and refreshed coverage (**46.4%** main module).
17+
- **Dependencies**: **modernc.org/sqlite** v1.55.0 (SQLite 3.53.3; **modernc.org/libc** v1.74.1); **github.com/mattn/go-runewidth** v0.0.27.
18+
- **Packaging**: Version strings and URLs for **v1.3.3** in **install.ps1**, **install.sh**, **build-release.ps1**, **scripts/build-*.ps1/sh**, **README**, **SECURITY.md**, **.github/workflows/release.yml**, and **packaging/** (Homebrew, Scoop, winget **1.3.3** manifest set, Chocolatey, AUR). **SHA256** fields are **placeholders** (`000000...`) until replaced from published release zips (**PACKAGING.md**, **packaging/ci/render-release-manifests.sh**).
1319

1420
## v1.3.2
1521

PACKAGING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ Published tap: [homebrew-marchat](https://github.com/Cod-e-Codes/homebrew-marcha
5858

5959
Upstream is [microsoft/winget-pkgs](https://github.com/microsoft/winget-pkgs). Maintainers use a fork, add `manifests/c/Cod-e-Codes/Marchat/<PackageVersion>/`, run `winget validate` on that folder, and open a PR. Package identifier: `Cod-e-Codes.Marchat`. The installer is a zip with `NestedInstallerType: portable` and two `PortableCommandAlias` entries for client and server. Microsoft may prompt first-time contributors to accept the CLA on the PR; follow the bot instructions there.
6060

61-
Example template path in this repo: `packaging/winget/manifests/c/Cod-e-Codes/Marchat/1.3.2/` (duplicate the folder layout for new versions). Older **`1.0.0/`**, **`1.1.0/`**, **`1.2.0/`**, **`1.3.0/`**, and **`1.3.1/`** manifests may remain for reference; the current release templates target **v1.3.2** until the next bump.
61+
Example template path in this repo: `packaging/winget/manifests/c/Cod-e-Codes/Marchat/1.3.3/` (duplicate the folder layout for new versions). Older **`1.0.0/`**, **`1.1.0/`**, **`1.2.0/`**, **`1.3.0/`**, **`1.3.1/`**, and **`1.3.2/`** manifests may remain for reference; the current release templates target **v1.3.3** until the next bump.
6262

6363
**Checksums vs GitHub release timing:** Portable zip manifests embed SHA256. After you publish a release and the five platform zips exist on GitHub, run [`packaging/ci/render-release-manifests.sh`](packaging/ci/render-release-manifests.sh) with `RELEASE_TAG` set and copy `packaging-out/` into `packaging/` (and into your tap, bucket, winget fork, or AUR clone as needed) so local `winget validate`, `brew audit`, and `choco pack` match real bytes. The committed templates may carry placeholder hashes until that sync step.
6464

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
[![Go Version](https://img.shields.io/github/go-mod/go-version/Cod-e-Codes/marchat?logo=go)](https://go.dev/dl/)
88
[![GitHub all releases](https://img.shields.io/github/downloads/Cod-e-Codes/marchat/total?logo=github)](https://github.com/Cod-e-Codes/marchat/releases)
99
[![Docker Pulls](https://img.shields.io/docker/pulls/codecodesxyz/marchat?logo=docker)](https://hub.docker.com/r/codecodesxyz/marchat)
10-
[![Version](https://img.shields.io/badge/version-v1.3.2-blue)](https://github.com/Cod-e-Codes/marchat/releases/tag/v1.3.2)
10+
[![Version](https://img.shields.io/badge/version-v1.3.3-blue)](https://github.com/Cod-e-Codes/marchat/releases/tag/v1.3.3)
1111

1212
A lightweight terminal chat with real-time messaging over WebSockets, optional E2E encryption, and a flexible plugin ecosystem. Built for developers who prefer the command line.
1313

@@ -37,7 +37,7 @@ Both clients follow the same wire format documented in [PROTOCOL.md](PROTOCOL.md
3737

3838
## Release notes
3939

40-
**Latest tagged release:** [v1.3.2](https://github.com/Cod-e-Codes/marchat/releases/tag/v1.3.2) (2026-07-15). Narrative history: [CHANGELOG.md](CHANGELOG.md). Assets and tags: [GitHub releases](https://github.com/Cod-e-Codes/marchat/releases).
40+
**Latest tagged release:** [v1.3.3](https://github.com/Cod-e-Codes/marchat/releases/tag/v1.3.3) (2026-08-03). Narrative history: [CHANGELOG.md](CHANGELOG.md). Assets and tags: [GitHub releases](https://github.com/Cod-e-Codes/marchat/releases).
4141

4242
**`main` branch:** may include changes not yet in that tag (for example items under **Unreleased** in [CHANGELOG.md](CHANGELOG.md)). Feature descriptions elsewhere in this README match the tree you build from source; compare your binary’s `-doctor` / `-version` output to the release page when in doubt.
4343

@@ -153,12 +153,12 @@ Tables created by the server (dialect-aware DDL for SQLite, PostgreSQL, and MySQ
153153
**Binary Installation:**
154154
```bash
155155
# Linux (amd64)
156-
wget https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.2/marchat-v1.3.2-linux-amd64.zip
157-
unzip marchat-v1.3.2-linux-amd64.zip && chmod +x marchat-*
156+
wget https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.3/marchat-v1.3.3-linux-amd64.zip
157+
unzip marchat-v1.3.3-linux-amd64.zip && chmod +x marchat-*
158158

159159
# macOS (amd64)
160-
wget https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.2/marchat-v1.3.2-darwin-amd64.zip
161-
unzip marchat-v1.3.2-darwin-amd64.zip && chmod +x marchat-*
160+
wget https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.3/marchat-v1.3.3-darwin-amd64.zip
161+
unzip marchat-v1.3.3-darwin-amd64.zip && chmod +x marchat-*
162162

163163
# Windows - PowerShell
164164
iwr -useb https://raw.githubusercontent.com/Cod-e-Codes/marchat/main/install.ps1 | iex
@@ -184,11 +184,11 @@ See [PACKAGING.md](PACKAGING.md) and `packaging/` for Homebrew, Scoop, winget, C
184184

185185
**Docker:**
186186
```bash
187-
docker pull codecodesxyz/marchat:v1.3.2
187+
docker pull codecodesxyz/marchat:v1.3.3
188188
docker run -d -p 8080:8080 \
189189
-e MARCHAT_ADMIN_KEY=$(openssl rand -hex 32) \
190190
-e MARCHAT_USERS=admin1,admin2 \
191-
codecodesxyz/marchat:v1.3.2
191+
codecodesxyz/marchat:v1.3.3
192192
```
193193

194194
**Docker Compose (local development):**

SECURITY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Supported Versions
44

5-
`marchat` is currently at **v1.3.2**.
5+
`marchat` is currently at **v1.3.3**.
66
All security updates and fixes are applied to the `main` branch.
77

88
| Version | Supported |

build-release.ps1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
# Build script for marchat v1.3.2
1+
# Build script for marchat v1.3.3
22
# This script builds all platform targets and creates release zips
33

44
$ErrorActionPreference = "Stop"
55

6-
$VERSION = "v1.3.2"
6+
$VERSION = "v1.3.3"
77
$BUILD_DIR = "build"
88
$RELEASE_DIR = "release"
99

install.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Supports Windows, Linux, macOS, and Android (via PowerShell Core)
55

66
param(
7-
[string]$Version = "v1.3.2"
7+
[string]$Version = "v1.3.3"
88
)
99

1010
$ErrorActionPreference = "Stop"

install.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
set -e # Exit on any error
77

8-
VERSION="v1.3.2"
8+
VERSION="v1.3.3"
99

1010
# Detect OS and architecture
1111
OS=$(uname | tr '[:upper:]' '[:lower:]')

packaging/aur/.SRCINFO

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
pkgbase = marchat-bin
22
pkgdesc = Terminal chat with WebSockets (official release binaries)
3-
pkgver = 1.3.2
3+
pkgver = 1.3.3
44
pkgrel = 1
55
url = https://github.com/Cod-e-Codes/marchat
66
arch = x86_64
77
arch = aarch64
88
license = MIT
99
depends = glibc
1010
options = !strip
11-
source_x86_64 = marchat-v1.3.2-linux-amd64.zip::https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.2/marchat-v1.3.2-linux-amd64.zip
12-
sha256sums_x86_64 = 3f604784d11452ad907775676cb0774de8f932987e5cd208505c9d46eb89367a
13-
source_aarch64 = marchat-v1.3.2-linux-arm64.zip::https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.2/marchat-v1.3.2-linux-arm64.zip
14-
sha256sums_aarch64 = 8893e13368016d727fed37b9e2b8fff6c75c5598aabb4b059eb1f36041945cd7
11+
source_x86_64 = marchat-v1.3.3-linux-amd64.zip::https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.3/marchat-v1.3.3-linux-amd64.zip
12+
sha256sums_x86_64 = 0000000000000000000000000000000000000000000000000000000000000000
13+
source_aarch64 = marchat-v1.3.3-linux-arm64.zip::https://github.com/Cod-e-Codes/marchat/releases/download/v1.3.3/marchat-v1.3.3-linux-arm64.zip
14+
sha256sums_aarch64 = 0000000000000000000000000000000000000000000000000000000000000000
1515

1616
pkgname = marchat-bin

packaging/aur/PKGBUILD

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Maintainer: Cody Marsengill <cod.e.codes.dev@gmail.com>
22
pkgname=marchat-bin
3-
pkgver=1.3.2
3+
pkgver=1.3.3
44
pkgrel=1
5-
_pkgtag=v1.3.2
5+
_pkgtag=v1.3.3
66
pkgdesc='Terminal chat with WebSockets (official release binaries)'
77
arch=('x86_64' 'aarch64')
88
url='https://github.com/Cod-e-Codes/marchat'
@@ -11,8 +11,8 @@ options=('!strip')
1111
depends=('glibc')
1212
source_x86_64=("marchat-${_pkgtag}-linux-amd64.zip::https://github.com/Cod-e-Codes/marchat/releases/download/${_pkgtag}/marchat-${_pkgtag}-linux-amd64.zip")
1313
source_aarch64=("marchat-${_pkgtag}-linux-arm64.zip::https://github.com/Cod-e-Codes/marchat/releases/download/${_pkgtag}/marchat-${_pkgtag}-linux-arm64.zip")
14-
sha256sums_x86_64=('3f604784d11452ad907775676cb0774de8f932987e5cd208505c9d46eb89367a')
15-
sha256sums_aarch64=('8893e13368016d727fed37b9e2b8fff6c75c5598aabb4b059eb1f36041945cd7')
14+
sha256sums_x86_64=('0000000000000000000000000000000000000000000000000000000000000000')
15+
sha256sums_aarch64=('0000000000000000000000000000000000000000000000000000000000000000')
1616

1717
package() {
1818
if [[ $CARCH == x86_64 ]]; then

0 commit comments

Comments
 (0)