Skip to content

Commit 4b3c7bf

Browse files
committed
chore: add fork diff explanation
1 parent fbe7479 commit 4b3c7bf

2 files changed

Lines changed: 88 additions & 0 deletions

File tree

‎README.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,6 @@ the Explanations, API Reference, How-To's and Tutorials guides.
3232
`Commanded` is based on [github.com/commanded/commanded](https://github.com/commanded/commanded).
3333
This fork introduces new features with an independent release cycle, allowing
3434
for thorough testing before contributing back to the original project.
35+
36+
**See [Fork Differences](guides/explanations/fork-differences.md) for a complete
37+
list of changes and new features compared to the upstream repository.**
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
# Fork Differences from Upstream
2+
3+
This document tracks all changes made in the `straw-hat-team/commanded` fork compared to the upstream `commanded/commanded` repository.
4+
5+
## Overview
6+
7+
This fork maintains an independent release cycle to introduce new features and improvements with thorough testing before considering contributions back to the original project.
8+
9+
**Upstream Repository:** [github.com/commanded/commanded](https://github.com/commanded/commanded)
10+
**Fork Repository:** [github.com/straw-hat-team/commanded](https://github.com/straw-hat-team/commanded)
11+
12+
---
13+
14+
## Breaking Changes
15+
16+
### **Removed ProcessManager Support** ❌
17+
[PR #24](https://github.com/straw-hat-team/commanded/pull/24)
18+
19+
**Changes:**
20+
- Removed all ProcessManager modules and tests
21+
- Removed ProcessManager documentation
22+
- Removed ProcessManager configuration
23+
- Updated documentation to remove ProcessManager references
24+
25+
**Reason:** The saga pattern can be achieved using event handlers with read models and aggregates, eliminating the need for the additional ProcessManager abstraction.
26+
27+
---
28+
29+
### **EnrichedMetadata Struct** 🔄
30+
[PR #11](https://github.com/straw-hat-team/commanded/pull/11)
31+
32+
**Changes:**
33+
- Replaced plain map metadata with `Commanded.EventStore.EnrichedMetadata` struct
34+
- Updated event handlers to use struct
35+
36+
**Breaking:** Event handler callbacks now receive `%EnrichedMetadata{}` instead of a plain map.
37+
38+
---
39+
40+
## Features Added
41+
42+
### **UUIDv7 Support** ✨
43+
[PR #22](https://github.com/straw-hat-team/commanded/pull/22)
44+
45+
**Changes:**
46+
- Added UUIDv7 generation support for command and event IDs
47+
- Modified command router to use `UUID.uuid7/0` by default
48+
49+
---
50+
51+
### **Configurable UUID Provider** ✨
52+
53+
**Changes:**
54+
- Integrated `Uniq.UUID` library for UUID generation
55+
- Made UUID provider configurable
56+
- Simplified UUID module by delegating to Uniq
57+
58+
---
59+
60+
### **Aggregate Telemetry for Version Conflicts** ✨
61+
[PR #8](https://github.com/straw-hat-team/commanded/pull/8)
62+
63+
**Changes:**
64+
- Added telemetry events for wrong expected version errors in aggregates
65+
- Enhanced monitoring capabilities for version conflicts
66+
67+
---
68+
69+
### **Custom Event ID Support** ✨
70+
[PR #2](https://github.com/straw-hat-team/commanded/pull/2)
71+
72+
**Changes:**
73+
- Added `Commanded.Event.EventId` protocol
74+
- Ability to set custom event IDs from event structs
75+
- Support for deterministic event IDs
76+
77+
---
78+
79+
### **EventStore Adapter** ✨
80+
[PR #1](https://github.com/straw-hat-team/commanded/pull/1)
81+
82+
**Changes:**
83+
- Bundled `Commanded.EventStore.Adapters.EventStore` directly into Commanded
84+
- Eliminates need for separate `commanded_eventstore_adapter` package dependency
85+

0 commit comments

Comments
 (0)