Skip to content

Commit cd9ba3f

Browse files
committed
Update RELEASES.md
1 parent 509631a commit cd9ba3f

1 file changed

Lines changed: 0 additions & 157 deletions

File tree

RELEASES.md

Lines changed: 0 additions & 157 deletions
Original file line numberDiff line numberDiff line change
@@ -1,161 +1,5 @@
11
# RustAPI Release History
22

3-
<<<<<<< Updated upstream
4-
## v0.1.300 - Time-Travel Debugging (2026-02-06)
5-
6-
### 🎯 Major Feature: Replay System
7-
8-
Introducing **Replay** - a comprehensive time-travel debugging system that records HTTP request/response pairs and allows you to replay them against different environments for debugging and regression testing.
9-
10-
#### Core Capabilities
11-
12-
- **Automatic Recording**: `ReplayLayer` middleware captures all HTTP traffic
13-
- **Flexible Storage**: In-memory (dev) and filesystem (production) stores
14-
- **Smart Diffing**: JSON-aware diff algorithm that highlights actual changes
15-
- **Security First**: Disabled by default, admin token auth, automatic sensitive data redaction
16-
- **CLI Tooling**: Full `cargo rustapi replay` command suite
17-
- **Retention Management**: Automatic cleanup with configurable TTL
18-
19-
#### Architecture
20-
21-
```
22-
rustapi-core → Pure types & traits (no IO)
23-
rustapi-extras → Middleware, stores, HTTP routes
24-
cargo-rustapi → CLI commands
25-
```
26-
27-
#### Quick Example
28-
29-
```rust
30-
use rustapi_rs::prelude::*;
31-
use rustapi_rs::replay::{ReplayLayer, InMemoryReplayStore};
32-
use rustapi_core::replay::ReplayConfig;
33-
34-
let replay = ReplayLayer::new(
35-
ReplayConfig::new()
36-
.enabled(true)
37-
.admin_token("secret")
38-
.ttl_secs(3600)
39-
);
40-
41-
RustApi::new()
42-
.layer(replay)
43-
.route("/api/users", get(list_users))
44-
.run("127.0.0.1:8080")
45-
.await
46-
```
47-
48-
#### Admin API Endpoints
49-
50-
- `GET /__rustapi/replays` - List entries
51-
- `GET /__rustapi/replays/{id}` - Show details
52-
- `POST /__rustapi/replays/{id}/run?target=URL` - Replay request
53-
- `POST /__rustapi/replays/{id}/diff?target=URL` - Compare responses
54-
- `DELETE /__rustapi/replays/{id}` - Delete entry
55-
56-
#### CLI Commands
57-
58-
**Installation** (requires `replay` feature):
59-
```bash
60-
cargo install cargo-rustapi --features replay
61-
```
62-
63-
**Usage**:
64-
```bash
65-
cargo rustapi replay list
66-
cargo rustapi replay show <id>
67-
cargo rustapi replay run <id> --target http://staging:8080
68-
cargo rustapi replay diff <id> --target http://staging:8080
69-
cargo rustapi replay delete <id>
70-
```
71-
72-
### 📦 What's Changed
73-
74-
- **28 files changed**: 4,113 insertions across rustapi-core, rustapi-extras, and cargo-rustapi
75-
- Comprehensive cookbook recipe with security guidelines
76-
- Full test coverage for all replay components
77-
78-
### 🔧 Improvements
79-
80-
- Fixed broken intra-doc link in replay module documentation
81-
- Removed unused `check_diff.py` script
82-
83-
### 🎓 Learn More
84-
85-
- [Cookbook: Replay Recipe](docs/cookbook/src/recipes/replay.md)
86-
- [PR #98: Time-Travel Debugging](https://github.com/Tuntii/RustAPI/pull/98)
87-
88-
---
89-
90-
## v0.1.202 - Performance Revolution (2026-01-26)
91-
92-
### 🚀 Performance Improvements
93-
94-
This release delivers a **12x performance improvement**, bringing RustAPI from ~8K req/s to **~92K req/s** - now within striking distance of Actix-web.
95-
96-
#### Benchmark Results
97-
98-
| Framework | Requests/sec | Latency (avg) |
99-
|-----------|-------------|---------------|
100-
| **RustAPI** | ~92,000 | ~1.1ms |
101-
| Actix-web 4 | ~105,000 | ~0.95ms |
102-
| Axum | ~100,000 | ~1.0ms |
103-
104-
*Tested with `hey -n 100000 -c 100` on Windows 11, Ryzen 9 5900X*
105-
106-
### ✨ Server Optimizations
107-
108-
- **TCP_NODELAY**: Disabled Nagle's algorithm for lower latency
109-
- **Pipeline Flush**: Enabled HTTP/1.1 pipeline flushing for better throughput
110-
- **ConnectionService**: Reduced Arc cloning overhead per connection
111-
- **HandleRequestFuture**: Custom future implementation for request handling
112-
- **Ultra-Fast Path**: New routing path that bypasses both middleware AND interceptors for maximum performance
113-
114-
### 📦 JSON Optimizations
115-
116-
- **simd-json Serialization**: Extended simd-json support from parsing-only to full serialization
117-
- Added `to_vec` and `to_vec_with_capacity` using simd-json when feature is enabled
118-
119-
### 🔧 Build Profile Optimizations
120-
121-
```toml
122-
[profile.release]
123-
lto = "fat"
124-
codegen-units = 1
125-
opt-level = 3
126-
panic = "abort"
127-
strip = true
128-
```
129-
130-
### 📚 Documentation
131-
132-
- Updated README.md with accurate benchmark numbers
133-
- Removed inflated performance claims
134-
- Added TechEmpower-based comparison data
135-
136-
### 🧹 Cleanup
137-
138-
- Removed unused static variables from bench_server
139-
- Code formatted with `cargo fmt --all`
140-
141-
---
142-
143-
## v0.1.201 - Previous Release
144-
145-
*See CHANGELOG.md for historical releases*
146-
147-
---
148-
149-
## Performance Roadmap
150-
151-
For planned optimizations to reach and exceed Actix performance, see [BEAT_ACTIX_ROADMAP.md](memories/BEAT_ACTIX_ROADMAP.md).
152-
153-
**Target: 105-115K req/s** through:
154-
- Stack-allocated futures (remove Box::pin)
155-
- Zero-copy path handling
156-
- Pre-compiled middleware stack
157-
- Response header pooling
158-
=======
1593
## v0.1.333 - Quick Wins + Must-Have Completion (2026-02-08)
1604

1615
This release combines dependency surface cleanup, runtime completions, and documentation alignment in one focused quick-wins iteration.
@@ -202,4 +46,3 @@ This release combines dependency surface cleanup, runtime completions, and docum
20246

20347
- Broad performance optimizations in server and JSON layers
20448
- Benchmark improvements and release profile tuning
205-
>>>>>>> Stashed changes

0 commit comments

Comments
 (0)