Skip to content

Commit 81835e2

Browse files
author
Weyoss
committed
1 parent 84dcb09 commit 81835e2

1 file changed

Lines changed: 63 additions & 0 deletions

File tree

release-notes/release-v8.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
2+
# RedisSMQ V8 Release Notes
3+
4+
## Overview
5+
RedisSMQ v8 represents a major evolution of our message queue system, with significant improvements to architecture, performance, and developer experience. This release focuses on reliability, scalability, and modern development practices.
6+
7+
## Table of Contents
8+
- [Overview](#overview)
9+
- [New Features](#new-features)
10+
- [Improvements](#improvements)
11+
- [Breaking Changes](#breaking-changes)
12+
- [Compatibility](#compatibility)
13+
- [Documentation](#documentation)
14+
15+
## New Features
16+
17+
### Core Architecture
18+
- **Reworked System Design**: Refactored the message queue core codebase to support multiple message types and delivery models with focus on reliability and scalability
19+
- **Queue-Scoped Workers**: Replaced global workers with queue-scoped workers for better resource allocation and management
20+
- **Migration to Monorepo**: Restructured into a monorepo architecture for improved package organization, dependency management, and development workflow
21+
22+
### Messaging
23+
- **Pub/Sub Delivery Model**: Implemented a publish/subscribe pattern alongside existing queue models, enabling broadcast messaging to multiple consumers
24+
- **Message Tracking System**: Added comprehensive message lifecycle tracking with unique IDs from publication to consumption
25+
- **Message Envelope Architecture**: Redesigned with `ProducibleMessage`/`ConsumableMessage`/`MessageEnvelope` for clearer separation of concerns
26+
27+
### API
28+
- **Enhanced Message Status API**: Introduced `getMessageStatus()` method and status tracking for improved visibility into message processing
29+
- **REST API Integration**: Created a comprehensive REST API with OpenAPI specification for managing queues and messages
30+
31+
### Tools
32+
- **Embedded Redis Server**: Integrated an embedded Redis server for streamlined development and testing
33+
34+
## Improvements
35+
36+
### Performance & Reliability
37+
- **LUA-Based Operations**: Migrated Redis operations to LUA scripts for atomic execution, improved performance, and data consistency
38+
- **Worker Threads**: Added support for isolating message handlers in separate worker threads to prevent blocking the main event loop
39+
- **Async Error Handling**: Implemented robust error handling patterns for asynchronous operations
40+
41+
### Developer Experience
42+
- **Enhanced TypeScript Definitions**: Improved type definitions throughout the codebase for better IDE integration and compile-time checks
43+
- **Unified Event System**: Consolidated consumer/producer event listeners into a consistent, predictable API
44+
- **Typed Events**: Implemented TypeScript event types for improved type safety and developer experience
45+
- **Granular Error Handling**: Developed specialized error classes for precise error reporting and handling
46+
- **PNPM Package Manager**: Replaced NPM with PNPM for faster, more efficient package management
47+
48+
### Code Quality
49+
- **Code Structure Optimization**: Refactored for improved readability, maintainability, and adherence to best practices
50+
- **Standardized Patterns**: Implemented consistent design patterns throughout the codebase
51+
- **Enhanced Testing Framework**: Migrated to vitest framework for more effective testing
52+
53+
## Breaking Changes
54+
- **API Changes**: Several API changes require updates to existing code
55+
- **Data Structure Compatibility**: Redis data structures are NOT compatible with v7.x
56+
57+
## Compatibility
58+
- **Node.js Compatibility**: Supports Node.js v20 and above, with full testing on v20 and v22
59+
- **Redis Compatibility**: Supports Redis v4 and above, with full testing on v7.2.8
60+
61+
## Documentation
62+
- **Interactive API Documentation**: Completely revamped API documentation with interactive examples and detailed explanations
63+
- **Architectural Diagrams**: Added new system architecture, message flow, and component interaction diagrams

0 commit comments

Comments
 (0)