- uinput injection is now primary on X11 (XTest fallback) - X11 XTest keycode offset +8 fixed for all send_keycode paths - Window switch detection on every keystroke (no more gap > 100ms guard) - Telex greyed out in tray with '(next version)' label - Flatpak and AppImage removed; only .deb packaging - All Cargo.toml versions bumped to 0.1.6
87 lines
1.6 KiB
Markdown
87 lines
1.6 KiB
Markdown
# Release Checklist
|
|
|
|
## When to release
|
|
|
|
- New feature or bugfix that should be distributed to users
|
|
- .deb packaging changes validated
|
|
- All tests passing (`cargo test`)
|
|
|
|
---
|
|
|
|
## Step-by-step
|
|
|
|
### 1. Bump version
|
|
|
|
Update version in:
|
|
- `daemon/Cargo.toml`
|
|
- `cli/Cargo.toml`
|
|
- `engine/Cargo.toml`
|
|
- `protocol/Cargo.toml`
|
|
- `ui/Cargo.toml`
|
|
- `uinputd/Cargo.toml`
|
|
- `README.md` version badge
|
|
|
|
### 2. Update CHANGELOG.md
|
|
|
|
Add a new entry under the version heading:
|
|
|
|
```markdown
|
|
## vX.Y.Z (YYYY-MM-DD)
|
|
|
|
### Added
|
|
- new features...
|
|
|
|
### Fixed
|
|
- bug fixes...
|
|
|
|
### Changed
|
|
- behavior changes...
|
|
```
|
|
|
|
### 3. Build the .deb
|
|
|
|
```bash
|
|
make deb
|
|
```
|
|
|
|
Verify the package was created:
|
|
|
|
```bash
|
|
ls -lh packaging/deb/vietc_*.deb
|
|
```
|
|
|
|
### 4. Install & test
|
|
|
|
```bash
|
|
sudo dpkg -i packaging/deb/vietc_X.Y.Z-1_amd64.deb
|
|
```
|
|
|
|
Test:
|
|
- Search "Viet+" in the application menu — the tray icon entry should appear
|
|
- Launch from menu — tray icon should show, Vietnamese input should work (VNI, Ctrl+Space to toggle)
|
|
- The tray should autostart on next login (XDG autostart installed)
|
|
|
|
### 5. Commit and push
|
|
|
|
```bash
|
|
git add -A
|
|
git commit -m "release: vX.Y.Z — <summary>"
|
|
git push origin main
|
|
```
|
|
|
|
### 6. Create a release on Forgejo/GitHub
|
|
|
|
Attach the .deb package (`vietc_X.Y.Z-1_amd64.deb`) as a release asset.
|
|
|
|
---
|
|
|
|
## Quick command
|
|
|
|
```bash
|
|
VERSION=X.Y.Z && \
|
|
sed -i "s/^version = .*/version = \"$VERSION\"/" \
|
|
daemon/Cargo.toml cli/Cargo.toml engine/Cargo.toml \
|
|
protocol/Cargo.toml ui/Cargo.toml uinputd/Cargo.toml && \
|
|
sed -i "s/Version-[0-9.]*-purple/Version-$VERSION-purple/" README.md && \
|
|
echo "Version bumped to $VERSION"
|
|
```
|