Changelog¶
All notable changes to MAID will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased¶
Added¶
- Version migration documentation and tools
- Mike versioning support for documentation
- Changelog generation script
Changed¶
- Documentation structure for better navigation
Deprecated¶
- None
Removed¶
- None
Fixed¶
- None
Security¶
- None
0.2.0 - Unreleased¶
Added¶
- Content Pack system for modular game content
- Layered command registry with priority-based resolution
- Multi-world support with portals
- Document store API for persistence
- Standard library package (maid-stdlib) with common components
- Classic RPG content pack (maid-classic-rpg)
- AI provider integration (OpenAI, Anthropic, Ollama)
- Hot reload support for development
- Comprehensive ECS (Entity Component System) architecture
- WebSocket support alongside Telnet
- REST API for external integrations
- Internationalization (i18n) support
- SSL/TLS configuration options
- Discord and IRC bridge support
- Profiling and performance tools
- Security audit documentation
Changed¶
- Restructured codebase into three packages (maid-engine, maid-stdlib, maid-classic-rpg)
- Improved async/await patterns throughout
- Enhanced event system with type-safe events
- Updated configuration system with environment variable support
Deprecated¶
- Legacy plugin system (use Content Packs instead)
- Direct entity manipulation (use ECS components instead)
Removed¶
- Old monolithic architecture
- Synchronous I/O operations
Fixed¶
- Memory leaks in long-running sessions
- Race conditions in entity creation
- Connection handling for slow clients
Security¶
- Added input validation for all commands
- Implemented proper authentication flow
- Added rate limiting for connection attempts
0.1.0 - 2024-01-01¶
Added¶
- Initial release of MAID
- Basic MUD engine with Telnet support
- Simple command system
- Room and player management
- Basic entity system
- Configuration via environment variables
Known Issues¶
- Limited scalability for large player counts
- No AI integration
- Monolithic architecture limits extensibility
Release Links¶
Changelog Entry Guidelines¶
When adding entries to this changelog:
Categories¶
| Category | Description | Example |
|---|---|---|
| Added | New features | "Add inventory sorting command" |
| Changed | Changes to existing features | "Improve combat damage calculation" |
| Deprecated | Features to be removed | "Deprecate old_api() in favor of new_api()" |
| Removed | Removed features | "Remove legacy save format support" |
| Fixed | Bug fixes | "Fix crash when inventory is empty" |
| Security | Security fixes | "Fix authentication bypass vulnerability" |
Entry Format¶
Examples¶
Good entries:
### Added
- Add spell casting system with mana management (#234) - @wizard_dev
- Add persistent player achievements (#256) - @achievement_team
### Fixed
- Fix crash when player dies with empty inventory (#245) - @bugfixer
- Fix race condition in multi-world portal traversal (#251) - @async_expert
Bad entries:
Commit Message to Changelog¶
If you use Conventional Commits, entries can be auto-generated:
| Commit Type | Changelog Category |
|---|---|
feat: |
Added |
fix: |
Fixed |
perf: |
Changed |
refactor: |
Changed |
docs: |
(Usually not included) |
test: |
(Usually not included) |
chore: |
(Usually not included) |
BREAKING CHANGE: |
Added (with migration guide) |
security: or sec: |
Security |
deprecate: |
Deprecated |
See scripts/generate_changelog.py for automated generation.