3.6 KiB
3.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.0] - 2024-12-27
Added
Core Architecture
- Complete server architecture with component orchestration
- Configuration manager with YAML and environment variable support
- Session manager with JID mapping and authentication
- Stanza router with filtering and event system
- Host manager for virtual host support
- Module manager with dynamic loading/unloading
- XMPP stream handler with SASL authentication
Network Servers
- C2S server with TCP/TLS support
- BOSH server (basic implementation)
- WebSocket server (basic implementation)
- S2S server (framework)
- Component server (framework)
Storage
- Storage manager with backend abstraction
- Memory storage implementation
- Store API with query support
Features
- PLAIN authentication mechanism
- Message routing (chat, groupchat, headline)
- Presence handling (available, unavailable)
- IQ request/response handling
- Virtual host support
- Module system with hooks
- Event-driven architecture
Utilities
- Winston-based logging system
- Configuration merging
- JID parsing and validation
Documentation
- Comprehensive README with features and examples
- Quick start guide
- API documentation
- Module development guide
- Deployment guide
- Project structure overview
Examples
- Echo bot example
- Simple XMPP client
- Welcome message module
Scripts
- Automated setup script
- NPM scripts for development and production
Security
- TLS/SSL support
- Connection limits
- Rate limiting framework
- Input validation
Configuration
- YAML configuration file
- Environment variable override
- Per-host configuration
- Module configuration
[Unreleased]
Planned Features
Core Modules
- mod_roster - Contact list management
- mod_disco - Service discovery
- mod_vcard - User profiles
- mod_private - Private XML storage
- mod_blocking - Block list management
Advanced Features
- MAM (Message Archive Management)
- MUC (Multi-User Chat)
- PubSub (Publish-Subscribe)
- HTTP File Upload
- Push notifications
Network
- Complete BOSH implementation
- Complete WebSocket implementation
- S2S federation
- Stream Management (XEP-0198)
Authentication
- SCRAM-SHA-1 mechanism
- SCRAM-SHA-256 mechanism
- External authentication
- Certificate-based authentication
Storage
- PostgreSQL backend
- MongoDB backend
- File-based storage
- Redis caching
Operations
- Health check endpoint
- Prometheus metrics
- Admin web interface
- Clustering support
- Hot reload
Security
- Certificate validation
- Rate limiting module
- Spam protection
- IP blacklisting
Known Issues
- S2S federation not fully implemented
- BOSH needs complete implementation
- WebSocket needs complete implementation
- Some XEPs need module implementation
Version History
Version 1.0.0 - Initial Release
The first complete release with:
- Full XMPP core protocol support
- C2S connections with TLS
- Basic BOSH and WebSocket support
- Modular architecture
- Virtual host support
- Memory storage
- Comprehensive documentation
Migration Guide
From 0.x to 1.0
N/A - First release
Deprecation Notices
None yet.
Contributors
- Main Developer: ale
- Inspired by: Prosody IM team