You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/faq.md
+14Lines changed: 14 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -88,6 +88,20 @@ This error was caused by a Python bug on Windows. It's been fixed by [this PR](h
88
88
89
89
More discussion can be found in issue [#318](https://github.com/commitizen-tools/commitizen/issues/318).
90
90
91
+
## Why don't we use Pydantic?
92
+
93
+
While **Pydantic** is a powerful and popular library for data validation, we intentionally avoid using it in this project to keep our dependency tree minimal and maintainable.
94
+
95
+
Including Pydantic would increase the chances of version conflicts for users - especially with major changes introduced in Pydantic v3. Because we pin dependencies tightly, adding Pydantic could unintentionally restrict what other tools or libraries users can install alongside `commitizen`.
96
+
97
+
Moreover we don't rely on the full feature set of Pydantic. Simpler alternatives like Python's built-in `TypedDict` offer sufficient type safety for our use cases, without the runtime overhead or dependency burden.
98
+
99
+
In short, avoiding **Pydantic** helps us:
100
+
101
+
- Keep dependencies lightweight
102
+
- Reduce compatibility issues for users
103
+
- Maintain clarity about what contributors should and shouldn't use
104
+
91
105
## Why does Commitizen not support CalVer?
92
106
93
107
`commitizen` could support CalVer alongside SemVer, but in practice implementing CalVer
0 commit comments