Skip to content

Commit 319cb0b

Browse files
committed
chore(release): bump version to v0.11.0-beta.2
1 parent 0d26a1a commit 319cb0b

8 files changed

Lines changed: 27 additions & 56 deletions

File tree

.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., v0.11.0-beta.1)'
9+
description: 'Version to build (e.g., v0.11.0-beta.2)'
1010
required: true
11-
default: 'v0.11.0-beta.1'
11+
default: 'v0.11.0-beta.2'
1212

1313
permissions:
1414
contents: read

README.md

Lines changed: 18 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -7,54 +7,25 @@
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-v0.11.0--beta.1-blue)](https://github.com/Cod-e-Codes/marchat/releases/tag/v0.11.0-beta.1)
10+
[![Version](https://img.shields.io/badge/version-v0.11.0--beta.2-blue)](https://github.com/Cod-e-Codes/marchat/releases/tag/v0.11.0-beta.2)
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

1414
**Quick start:** [QUICKSTART.md](QUICKSTART.md) for a single-page walkthrough (install → server → client → next docs).
1515

1616
## Latest Updates
1717

18-
### v0.11.0-beta.1 (Current)
19-
- **Release CI**: `.github/workflows/release.yml`**`resolve-version`** job fixes empty Docker/tag version (matrix jobs cannot export outputs); **`CGO_ENABLED=0`** on **`build`** for static release binaries; **Termux** uses **linux-arm64** zip (install scripts updated). Details: **ARCHITECTURE.md** (Build System), **QUICKSTART.md**, **TESTING.md**
20-
- **Merge [PR #83](https://github.com/Cod-e-Codes/marchat/pull/83) (`47c52e1`): multi-DB and durable state**: Large server/database overhaul: dialect-aware schema and queries for **SQLite**, **PostgreSQL**, and **MySQL/MariaDB**; **durable** storage for reactions and read receipts; dedicated **message-state** layer with retention-friendly cleanup and compatibility fixes (including MySQL index DDL and retention `DELETE` semantics). See **ARCHITECTURE.md** and **PROTOCOL.md** for backend and protocol alignment.
21-
- **Reliability**: Serialized WebSocket writes on each connection to avoid concurrent **ping** panics (landed on `main` ahead of this release)
22-
- **Admin TUI**: Layout, logs view, and heading alignment fixes
23-
- **Doctor**: Reports database dialect and DSN validity; validates empty durable-state tables
24-
- **Tests**: Reaction removal by target id; `db_dialect` and `message_state` coverage
25-
26-
### v0.10.0-beta.3
27-
- **Caddy / WSS**: `docker-compose.proxy.yml`, `deploy/caddy/` (`Caddyfile`, `proxy.env.example`), cross-platform `scripts/build-linux.sh` and `scripts/connect-local-wss.sh`, full walkthrough in `deploy/CADDY-REVERSE-PROXY.md`
28-
- **Client**: WSS/TLS tweaks; sanitize pasted `--server` URLs; connect from flags without profile picker when server+username are set (keystore passphrase prompted for `--e2e` unless `--non-interactive`); `MARCHAT_GLOBAL_E2E_KEY` unchanged
29-
- **Server config**: Document `godotenv.Overload` for `config/.env` vs process env (see README / env.example)
30-
31-
### v0.10.0-beta.2
32-
- **CLI diagnostics**: `marchat-client` and `marchat-server` support `-doctor` and `-doctor-json` for environment, paths, and config health
33-
- **Build**: `build-release.ps1` sets `CGO_ENABLED=0` for consistent cross-compilation
34-
- **Dependencies**: `modernc.org/sqlite` 1.47.0 → 1.48.0 (via Dependabot)
35-
- **Docs**: Updated LOC and test coverage figures; streamlined beta.1 feature list in README
36-
- **Docker**: image entrypoint fixes `/data` volume permissions and drops to non-root via `su-exec`; Unix line endings on `entrypoint.sh` for reliable Windows-built images
37-
38-
### v0.10.0-beta.1
39-
- **Message Management**: Edit, delete, pin, search messages by ID
40-
- **Reactions**: React to messages with emoji aliases (`:react 42 +1`, `heart`, `fire`, `party`, etc.)
41-
- **Direct Messages**: Private DM conversations between users
42-
- **Channels**: Multiple chat rooms with join/leave and per-channel messaging
43-
- **Typing Indicators**: See when other users are typing
44-
- **E2E File Transfers**: End-to-end encryption extended to file sharing
45-
- **UX Enhancements**: Connection status indicator, @mention tab completion, unread count, multi-line input (Alt+Enter/Ctrl+J), chat history export
46-
- **Security**: Rate limiting, constant-time admin key comparison, plugin download timeouts, SHA-pinned CI actions
47-
- **Refactoring**: Client split into hotkeys/render/websocket/commands modules, config directory unified, orphaned code removed
48-
- **Docker**: Added docker-compose.yml for local development
49-
- **Plugins**: Full plugin system wiring (message forwarding, user list updates, command responses, init handshake, store UI, license enforcement)
50-
51-
### Recent Releases
52-
- **v0.11.0-beta.1**: **[PR #83](https://github.com/Cod-e-Codes/marchat/pull/83)** multi-DB + durable reactions/read receipts and message state; doctor DB diagnostics; WebSocket write serialization; admin TUI fixes
53-
- **v0.10.0-beta.3**: Caddy TLS proxy example, Unix helper scripts, client WSS/direct-connect UX, config `.env` precedence docs
54-
- **v0.10.0-beta.2**: Doctor CLI, build-release cross-compile fix, sqlite bump, doc metrics refresh, Docker image entrypoint/volume permission fixes
55-
- **v0.10.0-beta.1**: Message edit/delete/pin/search, reactions, DMs, channels, typing, E2E file transfer, plugins, rate limits, Docker Compose sample
56-
- **v0.9.0-beta.6**: Rebuilt with Go 1.25.8 to address CVE-2026-25679, CVE-2026-27142, CVE-2026-27139
57-
- **v0.9.0-beta.5**: Automated release workflow, PBKDF2 keystore key derivation, JWT secret auto-generation, race condition fixes, Docker optimizations
18+
### v0.11.0-beta.2 (Current)
19+
- **Go 1.25.8** across CI, Docker, and docs; **SECURITY.md** updates (supported versions, edwards25519 note)
20+
- **UX**: Terminal-native chrome (reaction/message emoji unchanged); **Alt+M** / **`:msginfo`** toggle message metadata; colorized server banner and client pre-TUI (**`NO_COLOR`** respected)
21+
- **Doctor**: TTY color for text mode; server **`MARCHAT_*`** reflects **`config/.env`**; docs for **`-doctor-json`** / **`NO_COLOR`**
22+
- **Server**: Hardened license cache, username reservation, DB backup SQL; **CI**: static release builds, Node 24 for **`action-gh-release`**; **Termux****linux-arm64** assets
23+
24+
### Earlier
25+
- **v0.11.0-beta.1**: **[PR #83](https://github.com/Cod-e-Codes/marchat/pull/83)**: SQLite / PostgreSQL / MySQL, durable reactions & read receipts, message-state layer; release **`resolve-version`** + static builds; serialized WS writes; admin TUI & doctor DB checks (see **ARCHITECTURE.md**, **PROTOCOL.md**)
26+
- **v0.10.0-beta.3**: Caddy TLS proxy sample ([**deploy/CADDY-REVERSE-PROXY.md**](deploy/CADDY-REVERSE-PROXY.md)), client WSS/TLS & direct-connect UX, **`config/.env`** precedence docs
27+
- **v0.10.0-beta.2**: **`-doctor`** / **`-doctor-json`**, **`CGO_ENABLED=0`** builds, sqlite bump, Docker entrypoint & volume permissions
28+
- **v0.10.0-beta.1**: Edit/delete/pin/search, reactions, DMs, channels, typing, E2E files, plugins, rate limits, Docker Compose; client modularization
5829

5930
Full changelog on [GitHub releases](https://github.com/Cod-e-Codes/marchat/releases).
6031

@@ -150,24 +121,24 @@ Key tables for message tracking and moderation:
150121
**Binary Installation:**
151122
```bash
152123
# Linux (amd64)
153-
wget https://github.com/Cod-e-Codes/marchat/releases/download/v0.11.0-beta.1/marchat-v0.11.0-beta.1-linux-amd64.zip
154-
unzip marchat-v0.11.0-beta.1-linux-amd64.zip && chmod +x marchat-*
124+
wget https://github.com/Cod-e-Codes/marchat/releases/download/v0.11.0-beta.2/marchat-v0.11.0-beta.2-linux-amd64.zip
125+
unzip marchat-v0.11.0-beta.2-linux-amd64.zip && chmod +x marchat-*
155126

156127
# macOS (amd64)
157-
wget https://github.com/Cod-e-Codes/marchat/releases/download/v0.11.0-beta.1/marchat-v0.11.0-beta.1-darwin-amd64.zip
158-
unzip marchat-v0.11.0-beta.1-darwin-amd64.zip && chmod +x marchat-*
128+
wget https://github.com/Cod-e-Codes/marchat/releases/download/v0.11.0-beta.2/marchat-v0.11.0-beta.2-darwin-amd64.zip
129+
unzip marchat-v0.11.0-beta.2-darwin-amd64.zip && chmod +x marchat-*
159130

160131
# Windows - PowerShell
161132
iwr -useb https://raw.githubusercontent.com/Cod-e-Codes/marchat/main/install.ps1 | iex
162133
```
163134

164135
**Docker:**
165136
```bash
166-
docker pull codecodesxyz/marchat:v0.11.0-beta.1
137+
docker pull codecodesxyz/marchat:v0.11.0-beta.2
167138
docker run -d -p 8080:8080 \
168139
-e MARCHAT_ADMIN_KEY=$(openssl rand -hex 32) \
169140
-e MARCHAT_USERS=admin1,admin2 \
170-
codecodesxyz/marchat:v0.11.0-beta.1
141+
codecodesxyz/marchat:v0.11.0-beta.2
171142
```
172143

173144
**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 **v0.11.0-beta.1**.
5+
`marchat` is currently at **v0.11.0-beta.2**.
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 v0.11.0-beta.1
1+
# Build script for marchat v0.11.0-beta.2
22
# This script builds all platform targets and creates release zips
33

44
$ErrorActionPreference = "Stop"
55

6-
$VERSION = "v0.11.0-beta.1"
6+
$VERSION = "v0.11.0-beta.2"
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 = "v0.11.0-beta.1"
7+
[string]$Version = "v0.11.0-beta.2"
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="v0.11.0-beta.1"
8+
VERSION="v0.11.0-beta.2"
99

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

scripts/build-linux.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -euo pipefail
88
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
99
cd "$ROOT"
1010

11-
VERSION="v0.11.0-beta.1"
11+
VERSION="v0.11.0-beta.2"
1212
BUILD_TIME="$(date -u +"%Y-%m-%dT%H:%M:%SZ")"
1313
GIT_COMMIT="$(git rev-parse --short HEAD 2>/dev/null || echo unknown)"
1414

scripts/build-windows.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
$ErrorActionPreference = "Stop"
44
Set-Location (Split-Path -Parent $PSScriptRoot)
55

6-
$VERSION = "v0.11.0-beta.1"
6+
$VERSION = "v0.11.0-beta.2"
77
$BUILD_TIME = (Get-Date).ToUniversalTime().ToString("o")
88
$GIT_COMMIT = git rev-parse --short HEAD 2>$null
99
if (-not $GIT_COMMIT) { $GIT_COMMIT = "unknown" }

0 commit comments

Comments
 (0)