NextBridge v0.3.0
Warning
Document isn't updated yet (still v0.2)
This release is a major bridge and infrastructure update focused on QQ/NapCat forwarding, cross-platform command improvements, deployment usability, and migration robustness.
🚨 Breaking Changes / Upgrade Notes 🚨
- Configuration and integration behavior changed in several areas:
- HTTP port default
- webhook_path handling model
- command prefix flow
- naming changes around user/nickname/username
napcatdriver is renamed toqq
- If you are upgrading from older 0.x builds, verify:
- Migration path and database version state
- QQ/NapCat forwarding templates and asset URL settings
- Command routing (/ping and prefix-triggered commands)
- Any deployment assumptions tied to old HTTP defaults
Highlights
- Added broad QQ/NapCat forwarding improvements, including merged-forward handling and CQ face rendering enhancements.
- Added QQ protocol expansion with Lagrange and OneBot v11 support.
- Added Docker support (Dockerfile + docker-compose) and automated Docker image workflows.
- Introduced shared FastAPI HTTP server architecture and improved media fetching reliability.
- Improved cross-platform ping and command behavior across multiple drivers.
Added
- Docker deployment support with:
- Dockerfile
- docker-compose integration
- CI workflows for image build/push and Docker Hub support
- Built-in command prefix support and command help hinting when typing command prefixes.
- Cross-platform ping by nickname and improved target resolution.
- QQ driver improvements:
- ws_ssl_verify configuration
- qid support
- Lagrange / OneBot v11 protocol support
- Mattermost username fetching support.
- Database migration support and db_version-based migration management.
- New quality/dev tooling integrations (ruff/ty hooks and workflow integration).
Improved
- QQ/NapCat forward rendering pipeline:
- Better merged-forward rendering behavior
- Reduced forwarding node logs
- Improved mention/reply handling for QQ -> Discord forwarding
- Better handling for untrusted QQ UIDs in forwarding logic
- Media and HTTP reliability:
- Media fetching retries improved
- HTTP server startup logging improved
- Uvicorn log capture improvements
- Telegram forwarding:
- Added image padding strategy to avoid Telegram API aspect-ratio constraints
- Added command pass-through for /ping
- CQ face assets and mapping:
- Expanded CQ face map/gif database coverage
- Unicode fallback mapping completed and refined
- Forward assets moved from base64-heavy flow toward hosted asset flow
Fixed
- Discord bot sending now falls back to user_id when username is unavailable (instead of unsafe content fallback paths).
- Cross-platform mentions now only match bound users.
- Prevented mention-spam behavior in Discord by tightening allowed_mentions handling.
- Fixed QQ forward behavior so voice/video messages no longer send rich headers incorrectly.
- Fixed HTTP server start logging issue.
Changed
- Default HTTP server port changed to 9080.
- webhook_path is no longer treated as a secret value.
- “user” naming was refactored toward “nickname”/“username” semantics in core message fields.
- Migration versioning now uses database schema versioning (db_version) instead of app version coupling.
- Replaced python-olm dependency path with fresholm.
- Project documentation was moved out of this repository (docs folder removed here).
Internal / Maintenance
- Multiple lint/style autofix passes and workflow cleanup updates.
- CI/workflow conditions and developer tooling recommendations updated.
Full Changelog: v0.2.1...v0.3