Skip to content

Commit b3acfeb

Browse files
committed
docs: add version dependencies diagram
1 parent 3b08a4f commit b3acfeb

1 file changed

Lines changed: 39 additions & 0 deletions

File tree

docs/VERSION_DEPENDENCIES.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Flamingock Version Dependencies
2+
3+
This diagram shows the version dependency relationships between Flamingock release units. Each block represents a unit with its own lifecycle and version. An arrow means "depends on" (the source must reference a version of the target).
4+
5+
The **flamingock-bom** (inside flamingock-core) exposes artifacts from all units listed here.
6+
7+
```mermaid
8+
graph TD
9+
UTILS[flamingock-general-utils]
10+
TPL_API[flamingock-template-api]
11+
CORE_API[flamingock-core-api]
12+
SQL[flamingock-sql]
13+
MONGO_TPL[flamingock-mongodb-template]
14+
CORE[flamingock-core]
15+
GP[flamingock-gradle-plugin]
16+
17+
UTILS --> TPL_API
18+
UTILS --> CORE_API
19+
20+
TPL_API --> CORE_API
21+
TPL_API --> SQL
22+
TPL_API --> MONGO_TPL
23+
24+
CORE_API --> CORE
25+
SQL --> CORE
26+
MONGO_TPL --> CORE
27+
28+
CORE --> GP
29+
```
30+
31+
## Release order
32+
33+
When releasing, units must be released bottom-up. A version bump in a lower unit requires updating and releasing all units above it that reference it.
34+
35+
1. **flamingock-general-utils** (no Flamingock dependencies)
36+
2. **flamingock-template-api**
37+
3. **flamingock-core-api**, **flamingock-sql**, **flamingock-mongodb-template** (all depend on template-api/utils only)
38+
4. **flamingock-core** (depends on all of the above)
39+
5. **flamingock-gradle-plugin** (depends on all of the above)

0 commit comments

Comments
 (0)