164 líneas
3.6 KiB
Markdown
164 líneas
3.6 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [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
|
|
|
|
## References
|
|
|
|
- [Prosody IM](https://prosody.im/)
|
|
- [XMPP Standards Foundation](https://xmpp.org/)
|
|
- [RFC 6120 - XMPP Core](https://tools.ietf.org/html/rfc6120)
|
|
- [RFC 6121 - XMPP IM](https://tools.ietf.org/html/rfc6121)
|