Files
prosody-nodejs/CHANGELOG.md
2025-12-27 03:39:14 +01:00

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

References